From cb22562ef75aa01570a2dbde7b0b145fcc57b601 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Fredrik=20H=C3=BCbinette=20=28Hubbe=29?= <hubbe@hubbe.net>
Date: Wed, 11 Oct 1995 14:00:52 +0100
Subject: [PATCH] committing

Rev: README:1.1
Rev: bin/create_testsuite:1.3
Rev: bin/hilfe.lpc:1.2
Rev: bin/rsif:1.2
Rev: bin/uhttpd.lpc:1.2
Rev: doc/simulated/open:1.1
Rev: lib/master.lpc:1.2
Rev: lib/simulate.lpc:1.4
Rev: lib/testsuite.lpc:1.3
Rev: src/BUGS:1.3
Rev: src/Makefile.in:1.6
Rev: src/Makefile.in.src:1.2
Rev: src/README:1.2
Rev: src/add_efun.c:1.2
Rev: src/add_efun.h:1.2
Rev: src/array.c:1.4
Rev: src/array.h:1.2
Rev: src/backend.c:1.3
Rev: src/backend.h:1.2
Rev: src/builtin_efuns.c:1.2
Rev: src/builtin_efuns.h:1.2
Rev: src/call_out.c:1.5
Rev: src/call_out.h:1.2
Rev: src/callback.c:1.2
Rev: src/callback.h:1.2
Rev: src/config.h:1.6
Rev: src/configure.in:1.9
Rev: src/debug.c:1.4
Rev: src/debug.h:1.4
Rev: src/docode.c:1.4
Rev: src/docode.h:1.2
Rev: src/dynamic_buffer.c:1.3
Rev: src/dynamic_buffer.h:1.2
Rev: src/efun.h:1.2
Rev: src/error.c:1.2
Rev: src/error.h:1.2
Rev: src/fd_control.c:1.2
Rev: src/fd_control.h:1.2
Rev: src/fsort.c:1.2
Rev: src/fsort.h:1.2
Rev: src/global.h:1.2
Rev: src/hashtable.c:1.2
Rev: src/hashtable.h:1.2
Rev: src/interpret.c:1.5
Rev: src/interpret.h:1.2
Rev: src/language.y:1.3
Rev: src/las.c:1.3
Rev: src/las.h:1.3
Rev: src/lex.c:1.3
Rev: src/lex.h:1.2
Rev: src/list.c:1.3
Rev: src/list.h:1.2
Rev: src/lpc_signal.c:1.1
Rev: src/lpc_signal.h:1.1
Rev: src/lpc_types.c:1.3
Rev: src/lpc_types.h:1.2
Rev: src/machine.h.in:1.3
Rev: src/macros.h:1.4
Rev: src/main.c:1.8
Rev: src/main.h:1.2
Rev: src/mapping.c:1.4
Rev: src/mapping.h:1.2
Rev: src/memory.c:1.3
Rev: src/memory.h:1.2
Rev: src/module.c:1.2
Rev: src/module.h:1.2
Rev: src/modules/files/Makefile.in:1.3
Rev: src/modules/files/Makefile.in.src:1.2
Rev: src/modules/files/configure.in:1.5
Rev: src/modules/files/datagram.c:1.2
Rev: src/modules/files/efuns.c:1.4
Rev: src/modules/files/file.c:1.5
Rev: src/modules/files/file.h:1.3
Rev: src/modules/files/file_machine.h.in:1.3
Rev: src/modules/files/socket.c:1.6
Rev: src/modules/math/Makefile.in:1.4
Rev: src/modules/math/Makefile.in.src:1.3
Rev: src/modules/math/math.c:1.2
Rev: src/modules/regexp/Makefile.in:1.3
Rev: src/modules/regexp/Makefile.in.src:1.2
Rev: src/modules/regexp/glue.c:1.2
Rev: src/modules/regexp/regexp.h:1.2
Rev: src/modules/sprintf/Makefile.in:1.3
Rev: src/modules/sprintf/Makefile.in.src:1.2
Rev: src/modules/sprintf/sprintf.c:1.2
Rev: src/object.c:1.3
Rev: src/object.h:1.2
Rev: src/opcodes.c:1.6
Rev: src/opcodes.h:1.2
Rev: src/operators.c:1.3
Rev: src/operators.h:1.2
Rev: src/otable.h:1.2
Rev: src/port.c:1.9
Rev: src/port.h:1.4
Rev: src/program.h:1.2
Rev: src/rusage.c:1.3
Rev: src/rusage.h:1.2
Rev: src/stralloc.c:1.3
Rev: src/stralloc.h:1.3
Rev: src/stuff.c:1.2
Rev: src/stuff.h:1.2
Rev: src/svalue.c:1.4
Rev: src/svalue.h:1.2
Rev: src/todo:1.2
Rev: src/types.h:1.6
Rev: src/ualarm.c:1.2
---
 README                              |    8 +
 bin/create_testsuite                |   29 +-
 bin/hilfe.lpc                       |   22 +-
 bin/rsif                            |   14 +-
 bin/uhttpd.lpc                      |   72 +-
 doc/simulated/open                  |   33 +
 lib/master.lpc                      |    2 +-
 lib/simulate.lpc                    |   14 +-
 lib/testsuite.lpc                   | 2906 ++++++++++++++-------------
 src/BUGS                            |   29 +
 src/Makefile.in                     |  433 ++--
 src/Makefile.in.src                 |   16 +-
 src/README                          |    2 +-
 src/add_efun.c                      |    5 +
 src/add_efun.h                      |    6 +
 src/array.c                         |    5 +
 src/array.h                         |    5 +
 src/backend.c                       |   15 +-
 src/backend.h                       |    7 +-
 src/builtin_efuns.c                 |   76 +-
 src/builtin_efuns.h                 |    5 +
 src/call_out.c                      |    7 +-
 src/call_out.h                      |    5 +
 src/callback.c                      |    5 +
 src/callback.h                      |    5 +
 src/config.h                        |   16 +-
 src/configure.in                    |   96 +-
 src/debug.c                         |    5 +
 src/debug.h                         |    7 +
 src/docode.c                        |    6 +-
 src/docode.h                        |    5 +
 src/dynamic_buffer.c                |    5 +
 src/dynamic_buffer.h                |    5 +
 src/efun.h                          |    5 +
 src/error.c                         |   19 +-
 src/error.h                         |   26 +-
 src/fd_control.c                    |    5 +
 src/fd_control.h                    |    5 +
 src/fsort.c                         |    5 +
 src/fsort.h                         |    5 +
 src/global.h                        |   29 +
 src/hashtable.c                     |    5 +
 src/hashtable.h                     |    5 +
 src/interpret.c                     |   30 +-
 src/interpret.h                     |    5 +
 src/language.y                      |   27 +-
 src/las.c                           |   86 +-
 src/las.h                           |    6 +
 src/lex.c                           |   12 +-
 src/lex.h                           |    7 +-
 src/list.c                          |    5 +
 src/list.h                          |    5 +
 src/lpc_signal.c                    |  320 +++
 src/lpc_signal.h                    |   16 +
 src/lpc_types.c                     |    7 +-
 src/lpc_types.h                     |    5 +
 src/machine.h.in                    |   26 +-
 src/macros.h                        |    5 +
 src/main.c                          |   10 +
 src/main.h                          |    5 +
 src/mapping.c                       |    5 +
 src/mapping.h                       |    5 +
 src/memory.c                        |   16 +-
 src/memory.h                        |    5 +
 src/module.c                        |    5 +
 src/module.h                        |    5 +
 src/modules/files/Makefile.in       |   81 +-
 src/modules/files/Makefile.in.src   |    5 +
 src/modules/files/configure.in      |    5 +-
 src/modules/files/datagram.c        |    5 +
 src/modules/files/efuns.c           |   10 +-
 src/modules/files/file.c            |  137 +-
 src/modules/files/file.h            |   11 +
 src/modules/files/file_machine.h.in |   16 +-
 src/modules/files/socket.c          |   59 +-
 src/modules/math/Makefile.in        |   16 +-
 src/modules/math/Makefile.in.src    |    2 +-
 src/modules/math/math.c             |    5 +
 src/modules/regexp/Makefile.in      |   33 +-
 src/modules/regexp/Makefile.in.src  |    2 +-
 src/modules/regexp/glue.c           |   23 +-
 src/modules/regexp/regexp.h         |    7 +-
 src/modules/sprintf/Makefile.in     |   24 +-
 src/modules/sprintf/Makefile.in.src |    2 +-
 src/modules/sprintf/sprintf.c       |    5 +
 src/object.c                        |   16 +-
 src/object.h                        |    5 +
 src/opcodes.c                       |    5 +
 src/opcodes.h                       |    5 +
 src/operators.c                     |    5 +
 src/operators.h                     |    5 +
 src/otable.h                        |    5 +
 src/port.c                          |   24 +-
 src/port.h                          |   13 +-
 src/program.h                       |    9 +-
 src/rusage.c                        |    9 +-
 src/rusage.h                        |    5 +
 src/stralloc.c                      |    5 +
 src/stralloc.h                      |    5 +
 src/stuff.c                         |    5 +
 src/stuff.h                         |    5 +
 src/svalue.c                        |    9 +-
 src/svalue.h                        |    5 +
 src/todo                            |   16 +-
 src/types.h                         |    7 +-
 src/ualarm.c                        |    5 +
 106 files changed, 3326 insertions(+), 1888 deletions(-)
 create mode 100644 README
 create mode 100644 doc/simulated/open
 create mode 100644 src/lpc_signal.c
 create mode 100644 src/lpc_signal.h

diff --git a/README b/README
new file mode 100644
index 0000000000..09416d879d
--- /dev/null
+++ b/README
@@ -0,0 +1,8 @@
+Micro LPC by Fredrik Hübinette 1994-1995
+Permission to copy, modify, and distribute this source
+for any legal purpose granted as long as my name is
+still attatched to it. More specifically the GPL licence
+applies to this software.
+
+Read src/README for details on installation.
+New releases can be found on ftp://ftp.lysator.liu.se:/pub/languages/ulpc/
diff --git a/bin/create_testsuite b/bin/create_testsuite
index ee4d6ac733..238724f5f2 100755
--- a/bin/create_testsuite
+++ b/bin/create_testsuite
@@ -103,7 +103,25 @@ int main(int argc, string *argv)
 
    tests = ({
 
+
+// signum, signame
+test_eq(signum("SIGKILL"),9)
+test_eq(signum("SIGINT"),2)
+test_eq(signame(9),"SIGKILL")
+test_eq(signame(2),"SIGINT")
+
+// kill, signal, getpid
+test_true(intp(getpid()))
+test_do(signal(signum("SIGUSR1"),lambda() { add_efun("AFJLLAF",17); }))
+test_do(kill(getpid(),signum("SIGUSR1")))
+test_eq(AFJLLAF,17)
+test_do(add_efun("AFJLLAF"))
+test_do(signal(signum("SIGUSR1")))
+
 // Not yet cataloged
+test_do(sleep(1))
+test_compile_error([[} int foo() { return]]);
+test_compile_error([[} void foo() { return 1]]);
 test_equal( ({ lambda() { return 3; } , lambda() { return 7; }, lambda() { return 9; } })(), ({ 3,7,9 }))
 test_true(stringp(sprintf("%O",({1,2,"foo"}))))
 test_true(stringp(sprintf("%O",([1:2,"foo":"bar"]))))
@@ -142,7 +160,7 @@ test_equal(mkmapping("abcd"/"","jklm"/"") | mkmapping("jclm"/"","alcd"/""),
 test_program(int foo() { return 17;} mixed a() { return foo() == 17; })
 test_any([[mixed a; a=2; a=a*3; return a]],6)
 test_any([[mixed a = ({1}); a=a+({2}); return equal(a,({1,2}))]],1)
-test_define_program(/test,[[void foo() { return 17; }]])
+test_define_program(/test,[[int foo() { return 17; }]])
 test_any(function bar=clone((program)"/test")->foo; return bar(),17)
 test_eq(popen("echo foo"),"foo\n")
 
@@ -512,7 +530,7 @@ test_any(switch(2) { default: return 1; case 1: return 0; } return 0,1)
 test_any(switch(0) { case "apa": case 1.0: return 0; }  return 1,1)
 test_any(switch("apa") { case "apa": return 1; case 1.0: }  return 0,1)
 test_any(switch(1.0) { case "apa": return 0; case 1.0: return 1; } return 0,1)
-test_any(switch("sune") { case "gunnel": return 0; case "gunnar": return 1; case "sune": case "gusten": return 0; } return 0; )
+test_any(switch("sune") { case "gunnel": return 0; case "gunnar": return 1; case "sune": case "gusten": return 0; } return 0,0)
 test_any(switch("a") { case "a": return 1; case "b": case "c": case "d": case 'a': case '1': case '0': default: } return 0,1)
 test_any(switch("b") { case "a": return 0; case "b": return 1; case "c": case "d": case 'a': case '1': case '0': default: } return 0,1)
 test_any(switch("c") { case "a": case "b": return 0; case "c": return 1; case "d": case 'a': case '1': case '0': default: } return 0,1)
@@ -1125,8 +1143,8 @@ test_true(floatp(asin(0.7)))
 test_eq(asin(0.0),0.0)
 // - atan
 test_true(floatp(atan(0.7)))
-test_eq(3.1415 > 4.0*atan(1.0))
-test_eq(3.1416 < 4.0*atan(1.0))
+test_true(3.1415 < 4.0*atan(1.0))
+test_true(3.1416 > 4.0*atan(1.0))
 // - sin
 test_true(floatp(sin(1.2)))
 test_true(sin(atan(1.0))>0.707)
@@ -1220,7 +1238,8 @@ test_eq(all_efuns()["all_efuns"],all_efuns)
 
 // - allocate
 test_true(arrayp(allocate(0)))
-test_equal(allocate(2)==({0,0}))
+test_equal(allocate(2),({0,0}))
+test_false(allocate(2)==({0,0}))
 
 // - backtrace
 test_true(arrayp(backtrace()))
diff --git a/bin/hilfe.lpc b/bin/hilfe.lpc
index 8b2859ae5d..bce12e7987 100755
--- a/bin/hilfe.lpc
+++ b/bin/hilfe.lpc
@@ -1,4 +1,4 @@
-#!/usr/local/bin/lpc -Cstay
+#!/usr/local/bin/ulpc
 
 /* Hübbes incremental LPC frontend - HiLfe */
 
@@ -494,9 +494,17 @@ void read_input()
   write("Terminal closed.\n");
 }
 
+void signal_trap(int s)
+{
+  clean_buffer();
+  throw("**Break\n");
+}
+
 void main(int argc,string *argv)
 {
   add_efun("write",my_write);
+  signal(signum("SIGINT"),signal_trap);
+
   write(version()+
 	" Running Hilfe v1.2 (Hubbe's Incremental LPC FrontEnd)\n");
   write("> ");
@@ -505,15 +513,3 @@ void main(int argc,string *argv)
   return 0;
 }
 
-int signal(int s)
-{
-  if(s==4)
-  {
-    clean_buffer();
-    if(sizeof(backtrace())>1)
-      throw("**Break");
-    else
-      write("**Break\n");
-  }
-  return 1;
-}
diff --git a/bin/rsif b/bin/rsif
index 1725be9f2d..14055d9e6e 100755
--- a/bin/rsif
+++ b/bin/rsif
@@ -2,27 +2,27 @@
 
 int main(int argc,string *argv)
 {
-  int e,len;
+  int i;
   string file;
+
   if(argc<4)
   {
     write("Usage: rsif <from> <to> <files>\n");
     return 0;
   }
 
-  for(e=3;e<sizeof(argv);e++)
+  for(i=3; i<sizeof(argv); i++)
   {
-    if(file=read_bytes(argv[e]))
+    if(file=read_bytes(argv[i]))
     {
       if(-1!=strstr(file,argv[1]))
       {
-	write("Processing "+argv[e]+".\n");
-	len=strlen(file);
+	write("Processing "+argv[i]+".\n");
 	file=replace(file,argv[1],argv[2]);
 
-	if(mv(argv[e],argv[e]+"~"))
+	if( mv(argv[i],argv[i]+"~") )
 	{
-	  write_file(argv[e],file);
+	  write_file(argv[i],file);
 	}else{
 	  write("Failed to create backup file.\n");
 	}
diff --git a/bin/uhttpd.lpc b/bin/uhttpd.lpc
index 9af6a05b80..038afa1f82 100644
--- a/bin/uhttpd.lpc
+++ b/bin/uhttpd.lpc
@@ -16,62 +16,58 @@ inherit "/precompiled/port";
 /* Port to open */
 #define PORT 1905
 
+/* Definitions for contents of 'id' */
 #define OUTPUT 0
-#define FILE 1
+#define FILE   1
 #define OFFSET 2
-#define INPUT 3
+#define INPUT  3
 
-void write_callback(mapping id)
+void write_callback(array id)
 {
-  object o;
-  int i;
-  string s;
+  object output_object;
+  int written;
+  string data;
 
-//  perror(".");
-  if(o=id[OUTPUT])
+  if(output_object=id[OUTPUT])
   {
-    o->seek(id[OFFSET]);
-    s=o->read(BLOCK);
-    if(strlen(s))
+    output_object->seek(id[OFFSET]);
+    data=output_object->read(BLOCK);
+    if(strlen(data))
     {
-      i=id[FILE]->write(s);
-      if(i >= 0)
+      written=id[FILE]->write(data);
+      if(written >= 0)
       {
-//	write(i+"\n");
-	id[OFFSET]+=i;
+	id[OFFSET]+=written;
 	return;
       }
       perror("Error: "+id[FILE]->errno()+".\n");
     }
-//    perror("!");
-    destruct(o);
+    destruct(output_object);
     destruct(id[FILE]);
   }
 }
 
-void close_callback(mapping id)
+void close_callback(array id)
 {
-//  perror("#");
   if(id[FILE]) destruct(id[FILE]);
   if(id[OUTPUT]) destruct(id[OUTPUT]);
 }
 
-void read_callback(mapping id, string s)
+void read_callback(array id, string request)
 {
-  object out;
-  id[INPUT]+=s;
-  s=id[INPUT];
+  object output_object;
+  id[INPUT]+=request;
+  request=id[INPUT];
 
-//  perror("-");
-  if(sscanf(s,"GET %s%*[\012\015]",s))
+  if(sscanf(request,"GET %s%*[\012\015]",request))
   {
-    sscanf(s,"%s ",s);
-    sscanf(s,"%*[/]%s",s);
-    s=combine_path(BASE,s);
-    out=clone( (program) "/precompiled/file");
-    if(!out->open(s,"r"))
+    sscanf(request,"%s ",request);
+    sscanf(request,"%*[/]%s",request);
+    request=combine_path(BASE,request);
+    output_object=clone( (program) "/precompiled/file");
+    if(!output_object->open(request,"r"))
     {
-      if(!out->open(NOFILE,"r"))
+      if(!output_object->open(NOFILE,"r"))
       {
 	perror("Couldn't find default file.\n");
 	destruct(id[FILE]);
@@ -79,21 +75,19 @@ void read_callback(mapping id, string s)
       }
     }
 
-    id[OUTPUT]=out;
+    id[OUTPUT]=output_object;
     id[OFFSET]=0;
     id[FILE]->set_buffer(65536,"w");
-//    id[FILE]->set_nonblocking(read_callback,write_callback,close_callback);
     write_callback(id);
   }
 }
 
-
 void accept_callback()
 {
-  object file=accept();
-  if(!file) return;
-  file->set_id( ({0, file, 0, "" }) );
-  file->set_nonblocking(read_callback,write_callback,close_callback);
+  object output_object=accept();
+  if(!output_object) return;
+  output_object->set_id( ({0, output_object, 0, "" }) );
+  output_object->set_nonblocking(read_callback,write_callback,close_callback);
 }
 
 void main(int argc, string *argv)
@@ -106,5 +100,5 @@ void main(int argc, string *argv)
     return 17;
   }
 
-  return - 17;
+  return - 17; /* Keep going */
 }
diff --git a/doc/simulated/open b/doc/simulated/open
new file mode 100644
index 0000000000..d2937d986e
--- /dev/null
+++ b/doc/simulated/open
@@ -0,0 +1,33 @@
+NAME
+	open - open a file and return the file object
+
+SYNTAX
+	object open(string file, string mode);
+
+DESCRIPTION
+	Opens a file for 'mode' and returns the object, or zero if the
+        file cannot be opened.
+
+        file is the filename, and mode is a combination of theese characters:
+
+        r -- Open for read
+        w -- Open for write
+        a -- When write, open for append
+        t -- When write, truncate
+        c -- When read or write, if there is no file, try to create one.
+        x -- Fail if file already exist (use with 'c')
+
+        One of r or w must always be present.
+
+        The return value is either the file object or false (integer zero).
+
+        Functions in the file object include:
+        string read(int howmuch)
+        int write(string what)
+        int seek(int whereto)
+  
+        See the documentation for files/file for more information.
+
+SEE ALSO
+	files/file, read_bytes, write_file
+
diff --git a/lib/master.lpc b/lib/master.lpc
index 604b4ffab9..022f81b68f 100644
--- a/lib/master.lpc
+++ b/lib/master.lpc
@@ -185,7 +185,7 @@ void compile_error(string file,int line,string err)
  * Note that previous_object cannot be trusted in ths function, because
  * the compiler calls this function.
  */
-void handle_include(string f, string current_file)
+string handle_include(string f, string current_file)
 {
   string *tmp, path;
 /*  perror("Handle include: "+f+"\n"); */
diff --git a/lib/simulate.lpc b/lib/simulate.lpc
index c05ebb14f6..bc2862b646 100644
--- a/lib/simulate.lpc
+++ b/lib/simulate.lpc
@@ -172,7 +172,15 @@ string popen(string s)
     string t;
     destruct(p);
     t=read(0x7fffffff);
-    close();
+    if(!t)
+    {
+      int e;
+      e=errno();
+      close();
+      error("Popen failed with error "+e+".\n");
+    }else{
+      close();
+    }
     return t;
   }
 }
@@ -199,7 +207,7 @@ varargs int spawn(string s,object stdin,object stdout,object stderr)
       stderr->dup2(clone(f,"stderr"));
 
     exec("/bin/sh","-c",s);
-    exit(0);
+    exit(69);
   }
 }
 
@@ -340,7 +348,7 @@ void create()
   add_efun("strstr",search);
   add_efun("sum_arrays",sum_arrays);
   add_efun("this_function",this_function);
-  add_efun("version",lambda() { return "uLPC v1.0E-20"; }); /* for now */
+  add_efun("version",lambda() { return "uLPC v1.1E-16"; });
   add_efun("write_file",write_file);
   add_efun("get_function",get_function);
   add_efun("regexp",regexp);
diff --git a/lib/testsuite.lpc b/lib/testsuite.lpc
index a21bcd95fb..739b45ef59 100644
--- a/lib/testsuite.lpc
+++ b/lib/testsuite.lpc
@@ -46,830 +46,853 @@ int main(int argc, string *argv)
 
    tests = ({
 
+
+// signum, signame
+  "=mixed a() { return signum(\"SIGKILL\"); }\n"+	// test 1
+  "mixed b() { return 9; }",
+  "=mixed a() { return signum(\"SIGINT\"); }\n"+	// test 2
+  "mixed b() { return 2; }",
+  "=mixed a() { return signame(9); }\n"+	// test 3
+  "mixed b() { return \"SIGKILL\"; }",
+  "=mixed a() { return signame(2); }\n"+	// test 4
+  "mixed b() { return \"SIGINT\"; }",
+
+// kill, signal, getpid
+  "tmixed a() { return intp(getpid()); }",	// test 5
+  "dmixed a() { signal(signum(\"SIGUSR1\"),lambda() { add_efun(\"AFJLLAF\",17); }); }\n",	// test 6
+  "dmixed a() { kill(getpid(),signum(\"SIGUSR1\")); }\n",	// test 7
+  "=mixed a() { return AFJLLAF; }\n"+	// test 8
+  "mixed b() { return 17; }",
+  "dmixed a() { add_efun(\"AFJLLAF\"); }\n",	// test 9
+  "dmixed a() { signal(signum(\"SIGUSR1\")); }\n",	// test 10
+
 // Not yet cataloged
-  "emixed a() { return ({ lambda() { return 3; } , lambda() { return 7; }, lambda() { return 9; } })(); }\n"+	// test 1
+  "dmixed a() { sleep(1); }\n",	// test 11
+  "cmixed a() { } int foo() { return; }\n",	// test 12;
+  "cmixed a() { } void foo() { return 1; }\n",	// test 13;
+  "emixed a() { return ({ lambda() { return 3; } , lambda() { return 7; }, lambda() { return 9; } })(); }\n"+	// test 14
   "mixed b() { return ({ 3,7,9 }); }",
-  "tmixed a() { return stringp(sprintf(\"%O\",({1,2,\"foo\"}))); }",	// test 2
-  "tmixed a() { return stringp(sprintf(\"%O\",([1:2,\"foo\":\"bar\"]))); }",	// test 3
-  "=mixed a() { int *a=({10}); a[0]++; return a[0]; }\n"+	// test 4
+  "tmixed a() { return stringp(sprintf(\"%O\",({1,2,\"foo\"}))); }",	// test 15
+  "tmixed a() { return stringp(sprintf(\"%O\",([1:2,\"foo\":\"bar\"]))); }",	// test 16
+  "=mixed a() { int *a=({10}); a[0]++; return a[0]; }\n"+	// test 17
   "mixed b() { return 11; }",
-  "=mixed a() { mapping a=([10:11]); a[10]++; return a[10]; }\n"+	// test 5
+  "=mixed a() { mapping a=([10:11]); a[10]++; return a[10]; }\n"+	// test 18
   "mixed b() { return 12; }",
-  "=mixed a() { int e; object o=clone((program)\"/precompiled/file\"); if(!o->open(\"conftest.h\",\"wct\")) return -1; e=o->write(\"return 17;\\n\"); if(!o->close()) return -1; return e; }\n"+	// test 6
+  "=mixed a() { int e; object o=clone((program)\"/precompiled/file\"); if(!o->open(\"conftest.h\",\"wct\")) return -1; e=o->write(\"return 17;\\n\"); if(!o->close()) return -1; return e; }\n"+	// test 19
   "mixed b() { return 11; }",
-  "emixed a() { return mkmapping( ({3,6,2}), ({\"3\",\"6\",\"2\"})); }\n"+	// test 7
+  "emixed a() { return mkmapping( ({3,6,2}), ({\"3\",\"6\",\"2\"})); }\n"+	// test 20
   "mixed b() { return ([3:\"3\", 6:\"6\", 2:\"2\"]); }",
-  "emixed a() { return sum(([3:\"3\", 6:\"6\", 2:\"2\"])); }\n"+	// test 8
+  "emixed a() { return sum(([3:\"3\", 6:\"6\", 2:\"2\"])); }\n"+	// test 21
   "mixed b() { return ([3:\"3\", 6:\"6\", 2:\"2\"]); }",
-  "tmixed a() { return sum(([3:\"3\", 6:\"6\", 2:\"2\"])) != ([3:\"3\", 6:\"6\", 2:\"2\"]); }",	// test 9
-  "=mixed a() { \n#include \"conftest.h\"\n; }\n"+	// test 10
+  "tmixed a() { return sum(([3:\"3\", 6:\"6\", 2:\"2\"])) != ([3:\"3\", 6:\"6\", 2:\"2\"]); }",	// test 22
+  "=mixed a() { \n#include \"conftest.h\"\n; }\n"+	// test 23
   "mixed b() { return 17; }",
-  "=mixed a() { \n#include <conftest.h>\n; }\n"+	// test 11
+  "=mixed a() { \n#include <conftest.h>\n; }\n"+	// test 24
   "mixed b() { return 17; }",
-  "tmixed a() { return intp(__LINE__); }",	// test 12
-  "tmixed a() { return stringp(__FILE__); }",	// test 13
-  "tmixed a() { return stringp(__DATE__); }",	// test 14
-  "tmixed a() { return stringp(__TIME__); }",	// test 15
-  "tmixed a() { return efun::stringp(\"\"); }",	// test 16
-  "emixed a() { return \"a,b,4,7,8s,asfd,a,d,f\" / \",\"; }\n"+	// test 17
+  "tmixed a() { return intp(__LINE__); }",	// test 25
+  "tmixed a() { return stringp(__FILE__); }",	// test 26
+  "tmixed a() { return stringp(__DATE__); }",	// test 27
+  "tmixed a() { return stringp(__TIME__); }",	// test 28
+  "tmixed a() { return efun::stringp(\"\"); }",	// test 29
+  "emixed a() { return \"a,b,4,7,8s,asfd,a,d,f\" / \",\"; }\n"+	// test 30
   "mixed b() { return \"a,b,4,7,8s,asfd,a,d,f\" / \",\"; }",
-  "=mixed a() { string *a=\"a,b\"/\",\"; a[0]=\"c\"; return equal(a,({\"c\",\"b\"})); }\n"+	// test 18
+  "=mixed a() { string *a=\"a,b\"/\",\"; a[0]=\"c\"; return equal(a,({\"c\",\"b\"})); }\n"+	// test 31
   "mixed b() { return 1; }",
-  "tmixed a() { return 0||1; }",	// test 19
-  "tmixed a() { return 1||0; }",	// test 20
-  "tmixed a() { return !0||!0; }",	// test 21
-  "tmixed a() { return !0&&!0; }",	// test 22
-  "=mixed a() { mixed a=1; a+=1; return a; }\n"+	// test 23
+  "tmixed a() { return 0||1; }",	// test 32
+  "tmixed a() { return 1||0; }",	// test 33
+  "tmixed a() { return !0||!0; }",	// test 34
+  "tmixed a() { return !0&&!0; }",	// test 35
+  "=mixed a() { mixed a=1; a+=1; return a; }\n"+	// test 36
   "mixed b() { return 2; }",
-  "=mixed a() { mixed a=1; a-=1; return a; }\n"+	// test 24
+  "=mixed a() { mixed a=1; a-=1; return a; }\n"+	// test 37
   "mixed b() { return 0; }",
-  "emixed a() { return \"abcd\"/\"\" - indices(\"abcd\"); }\n"+	// test 25
+  "emixed a() { return \"abcd\"/\"\" - indices(\"abcd\"); }\n"+	// test 38
   "mixed b() { return ({\"a\",\"b\",\"c\",\"d\"}); }",
-  "emixed a() { return \"abcd\"/\"\" & indices(\"abcd\"); }\n"+	// test 26
+  "emixed a() { return \"abcd\"/\"\" & indices(\"abcd\"); }\n"+	// test 39
   "mixed b() { return ({}); }",
-  "=mixed a() { return sizeof(\"abcd\"/\"\" & \"de\"/\"\"); }\n"+	// test 27
+  "=mixed a() { return sizeof(\"abcd\"/\"\" & \"de\"/\"\"); }\n"+	// test 40
   "mixed b() { return 1; }",
-  "emixed a() { return ({0,0,0,0,0}); }\n"+	// test 28
+  "emixed a() { return ({0,0,0,0,0}); }\n"+	// test 41
   "mixed b() { return ({0,0,0,0,0}); }",
-  "emixed a() { return ({0,0,0,0,0}); }\n"+	// test 29
+  "emixed a() { return ({0,0,0,0,0}); }\n"+	// test 42
   "mixed b() { return allocate(5,\"object\"); }",
-  "emixed a() { return mkmapping(\"abcd\"/\"\",\"jklm\"/\"\") | mkmapping(\"jclm\"/\"\",\"alcd\"/\"\"); }\n"+	// test 30
+  "emixed a() { return mkmapping(\"abcd\"/\"\",\"jklm\"/\"\") | mkmapping(\"jclm\"/\"\",\"alcd\"/\"\"); }\n"+	// test 43
   "mixed b() { return mkmapping(\"abcdjlm\"/\"\",\"jklmacd\"/\"\"); }",
-  "t\n"+"int foo() { return 17;} mixed a() { return foo() == 17; }\n",	// test 31 
-  "=mixed a() { mixed a; a=2; a=a*3; return a; }\n"+	// test 32
+  "t\n"+"int foo() { return 17;} mixed a() { return foo() == 17; }\n",	// test 44 
+  "=mixed a() { mixed a; a=2; a=a*3; return a; }\n"+	// test 45
   "mixed b() { return 6; }",
-  "=mixed a() { mixed a = ({1}); a=a+({2}); return equal(a,({1,2})); }\n"+	// test 33
+  "=mixed a() { mixed a = ({1}); a=a+({2}); return equal(a,({1,2})); }\n"+	// test 46
   "mixed b() { return 1; }",
-  "Pstring a() { return \"/test\"; }\n"+	// test 34
-  "string b() { return \"void foo() { return 17; }\"; }",
-  "=mixed a() { function bar=clone((program)\"/test\")->foo; return bar(); }\n"+	// test 35
+  "Pstring a() { return \"/test\"; }\n"+	// test 47
+  "string b() { return \"int foo() { return 17; }\"; }",
+  "=mixed a() { function bar=clone((program)\"/test\")->foo; return bar(); }\n"+	// test 48
   "mixed b() { return 17; }",
-  "=mixed a() { return popen(\"echo foo\"); }\n"+	// test 36
+  "=mixed a() { return popen(\"echo foo\"); }\n"+	// test 49
   "mixed b() { return \"foo\\n\"; }",
 
 // sscanf
-  "=mixed a() { mixed a; return sscanf(\"11\",\"%d\",a); }\n"+	// test 37
+  "=mixed a() { mixed a; return sscanf(\"11\",\"%d\",a); }\n"+	// test 50
   "mixed b() { return 1; }",
-  "=mixed a() { mixed a; sscanf(\"11\",\"%d\",a); return a; }\n"+	// test 38
+  "=mixed a() { mixed a; sscanf(\"11\",\"%d\",a); return a; }\n"+	// test 51
   "mixed b() { return 11; }",
-  "=mixed a() { mixed a,b; return sscanf(\"11foo\",\"%dfoo\",a); }\n"+	// test 39
+  "=mixed a() { mixed a,b; return sscanf(\"11foo\",\"%dfoo\",a); }\n"+	// test 52
   "mixed b() { return 1; }",
-  "=mixed a() { mixed a,b; sscanf(\"11foo\",\"%dfoo\",a); return a; }\n"+	// test 40
+  "=mixed a() { mixed a,b; sscanf(\"11foo\",\"%dfoo\",a); return a; }\n"+	// test 53
   "mixed b() { return 11; }",
-  "=mixed a() { mixed a,b; return sscanf(\"11foo\",\"%d%s\",a,b); }\n"+	// test 41
+  "=mixed a() { mixed a,b; return sscanf(\"11foo\",\"%d%s\",a,b); }\n"+	// test 54
   "mixed b() { return 2; }",
-  "=mixed a() { mixed a,b; sscanf(\"11foo\",\"%d%s\",a,b); return b; }\n"+	// test 42
+  "=mixed a() { mixed a,b; sscanf(\"11foo\",\"%d%s\",a,b); return b; }\n"+	// test 55
   "mixed b() { return \"foo\"; }",
-  "=mixed a() { mixed a,b; return sscanf(\"foo\",\"%c%s\",b,a); }\n"+	// test 43
+  "=mixed a() { mixed a,b; return sscanf(\"foo\",\"%c%s\",b,a); }\n"+	// test 56
   "mixed b() { return 2; }",
-  "=mixed a() { mixed a,b; sscanf(\"foo\",\"%c%s\",b,a); return b; }\n"+	// test 44
+  "=mixed a() { mixed a,b; sscanf(\"foo\",\"%c%s\",b,a); return b; }\n"+	// test 57
   "mixed b() { return 'f'; }",
-  "=mixed a() { mixed a,b; sscanf(\"foo\",\"%c%s\",b,a); return a; }\n"+	// test 45
+  "=mixed a() { mixed a,b; sscanf(\"foo\",\"%c%s\",b,a); return a; }\n"+	// test 58
   "mixed b() { return \"oo\"; }",
-  "=mixed a() { mixed a,b; return sscanf(\"1.0\",\"%f\",a); }\n"+	// test 46
+  "=mixed a() { mixed a,b; return sscanf(\"1.0\",\"%f\",a); }\n"+	// test 59
   "mixed b() { return 1; }",
-  "=mixed a() { mixed a,b; sscanf(\"1.0\",\"%f\",a); return a; }\n"+	// test 47
+  "=mixed a() { mixed a,b; sscanf(\"1.0\",\"%f\",a); return a; }\n"+	// test 60
   "mixed b() { return 1.0; }",
-  "=mixed a() { mixed a,b; sscanf(\"abcdeFGji\",\"%[a-z]%s\",a,b); return a; }\n"+	// test 48
+  "=mixed a() { mixed a,b; sscanf(\"abcdeFGji\",\"%[a-z]%s\",a,b); return a; }\n"+	// test 61
   "mixed b() { return \"abcde\"; }",
-  "=mixed a() { mixed a,b; sscanf(\"abcdeFGji\",\"%[a-z]%s\",a,b); return b; }\n"+	// test 49
+  "=mixed a() { mixed a,b; sscanf(\"abcdeFGji\",\"%[a-z]%s\",a,b); return b; }\n"+	// test 62
   "mixed b() { return \"FGji\"; }",
 
-  "=mixed a() { mixed a,b; return sscanf(\"foo-%-bar\",\"%s-%%-%s\",a,b);; }\n"+	// test 50
+  "=mixed a() { mixed a,b; return sscanf(\"foo-%-bar\",\"%s-%%-%s\",a,b);; }\n"+	// test 63
   "mixed b() { return 2; }",
-  "=mixed a() { mixed a,b; sscanf(\"foo-%-bar\",\"%s-%%-%s\",a,b); return a; }\n"+	// test 51
+  "=mixed a() { mixed a,b; sscanf(\"foo-%-bar\",\"%s-%%-%s\",a,b); return a; }\n"+	// test 64
   "mixed b() { return \"foo\"; }",
-  "=mixed a() { mixed a,b; sscanf(\"foo-%-bar\",\"%s-%%-%s\",a,b); return b; }\n"+	// test 52
+  "=mixed a() { mixed a,b; sscanf(\"foo-%-bar\",\"%s-%%-%s\",a,b); return b; }\n"+	// test 65
   "mixed b() { return \"bar\"; }",
 
 // Basics
-  "tmixed a() { return 1; }",	// test 53
-  "tmixed a() { return \"\"; }",	// test 54
-  "tmixed a() { return !0; }",	// test 55
-  "tmixed a() { return !(!1); }",	// test 56
-  "tmixed a() { return this_object(); }",	// test 57
-  "tmixed a() { return a; }",	// test 58 // a is the test function
-  "tmixed a() { return 0.0; }",	// test 59
-  "tmixed a() { return ([]); }",	// test 60
-  "tmixed a() { return ({}); }",	// test 61
-  "tmixed a() { return (<>); }",	// test 62
-  "tmixed a() { return object_program(this_object()); }",	// test 63
+  "tmixed a() { return 1; }",	// test 66
+  "tmixed a() { return \"\"; }",	// test 67
+  "tmixed a() { return !0; }",	// test 68
+  "tmixed a() { return !(!1); }",	// test 69
+  "tmixed a() { return this_object(); }",	// test 70
+  "tmixed a() { return a; }",	// test 71 // a is the test function
+  "tmixed a() { return 0.0; }",	// test 72
+  "tmixed a() { return ([]); }",	// test 73
+  "tmixed a() { return ({}); }",	// test 74
+  "tmixed a() { return (<>); }",	// test 75
+  "tmixed a() { return object_program(this_object()); }",	// test 76
 
 // testing !
-  "emixed a() { return !\"\"; }\n"+	// test 64
+  "emixed a() { return !\"\"; }\n"+	// test 77
   "mixed b() { return 0; }",
-  "emixed a() { return !this_object(); }\n"+	// test 65
+  "emixed a() { return !this_object(); }\n"+	// test 78
   "mixed b() { return 0; }",
-  "emixed a() { return !this_function(); }\n"+	// test 66
+  "emixed a() { return !this_function(); }\n"+	// test 79
   "mixed b() { return 0; }",
 
 // testing ==
-  "tmixed a() { return 1==1; }",	// test 67
-  "tmixed a() { return !(1==2); }",	// test 68
-  "tmixed a() { return \"\"==\"\"; }",	// test 69
-  "tmixed a() { return !(\"\"==\"foo\"); }",	// test 70
-  "tmixed a() { return this_object()==this_object(); }",	// test 71
-//   "tmixed a() { return this_function()==main; }",	// test 72
-  "tmixed a() { return 2.0==2.0; }",	// test 73
-  "tmixed a() { return ({})==({}); }",	// test 74
+  "tmixed a() { return 1==1; }",	// test 80
+  "tmixed a() { return !(1==2); }",	// test 81
+  "tmixed a() { return \"\"==\"\"; }",	// test 82
+  "tmixed a() { return !(\"\"==\"foo\"); }",	// test 83
+  "tmixed a() { return this_object()==this_object(); }",	// test 84
+//   "tmixed a() { return this_function()==main; }",	// test 85
+  "tmixed a() { return 2.0==2.0; }",	// test 86
+  "tmixed a() { return ({})==({}); }",	// test 87
 
 // testing !=
-  "tmixed a() { return ({1})!=({1}); }",	// test 75
-  "tmixed a() { return 1!=2; }",	// test 76
-  "tmixed a() { return !(1==2); }",	// test 77
-  "tmixed a() { return !(\"\"!=\"\"); }",	// test 78
-  "tmixed a() { return \"\"!=\"foo\"; }",	// test 79
+  "tmixed a() { return ({1})!=({1}); }",	// test 88
+  "tmixed a() { return 1!=2; }",	// test 89
+  "tmixed a() { return !(1==2); }",	// test 90
+  "tmixed a() { return !(\"\"!=\"\"); }",	// test 91
+  "tmixed a() { return \"\"!=\"foo\"; }",	// test 92
 
 // testing < > <= >=
 
 
 
 
-  "tmixed a() { return 1<2; }",	// test 80
-  "tmixed a() { return !(1>2); }",	// test 81
-  "tmixed a() { return 2>1; }",	// test 82
-  "tmixed a() { return !(2<1); }",	// test 83
-  "tmixed a() { return 1<=2; }",	// test 84
-  "tmixed a() { return !(1>=2); }",	// test 85
-  "tmixed a() { return 2>=1; }",	// test 86
-  "tmixed a() { return !(2<=1); }",	// test 87
-  "tmixed a() { return 2<=2; }",	// test 88
-  "tmixed a() { return 1>=1; }",	// test 89 
-
-  "tmixed a() { return 1.0<2.0; }",	// test 90
-  "tmixed a() { return !(1.0>2.0); }",	// test 91
-  "tmixed a() { return 2.0>1.0; }",	// test 92
-  "tmixed a() { return !(2.0<1.0); }",	// test 93
-  "tmixed a() { return 1.0<=2.0; }",	// test 94
-  "tmixed a() { return !(1.0>=2.0); }",	// test 95
-  "tmixed a() { return 2.0>=1.0; }",	// test 96
-  "tmixed a() { return !(2.0<=1.0); }",	// test 97
-  "tmixed a() { return 2.0<=2.0; }",	// test 98
-  "tmixed a() { return 1.0>=1.0; }",	// test 99 
-
-  "tmixed a() { return \"a\"<\"b\"; }",	// test 100
-  "tmixed a() { return !(\"a\">\"b\"); }",	// test 101
-  "tmixed a() { return \"b\">\"a\"; }",	// test 102
-  "tmixed a() { return !(\"b\"<\"a\"); }",	// test 103
-  "tmixed a() { return \"a\"<=\"b\"; }",	// test 104
-  "tmixed a() { return !(\"a\">=\"b\"); }",	// test 105
-  "tmixed a() { return \"b\">=\"a\"; }",	// test 106
-  "tmixed a() { return !(\"b\"<=\"a\"); }",	// test 107
-  "tmixed a() { return \"b\"<=\"b\"; }",	// test 108
-  "tmixed a() { return \"a\">=\"a\"; }",	// test 109 
-
-  "tmixed a() { return \"\"<\"b\"; }",	// test 110
-  "tmixed a() { return !(\"\">\"b\"); }",	// test 111
-  "tmixed a() { return \"b\">\"\"; }",	// test 112
-  "tmixed a() { return !(\"b\"<\"\"); }",	// test 113
-  "tmixed a() { return \"\"<=\"b\"; }",	// test 114
-  "tmixed a() { return !(\"\">=\"b\"); }",	// test 115
-  "tmixed a() { return \"b\">=\"\"; }",	// test 116
-  "tmixed a() { return !(\"b\"<=\"\"); }",	// test 117
-  "tmixed a() { return \"b\"<=\"b\"; }",	// test 118
-  "tmixed a() { return \"\">=\"\"; }",	// test 119 
+  "tmixed a() { return 1<2; }",	// test 93
+  "tmixed a() { return !(1>2); }",	// test 94
+  "tmixed a() { return 2>1; }",	// test 95
+  "tmixed a() { return !(2<1); }",	// test 96
+  "tmixed a() { return 1<=2; }",	// test 97
+  "tmixed a() { return !(1>=2); }",	// test 98
+  "tmixed a() { return 2>=1; }",	// test 99
+  "tmixed a() { return !(2<=1); }",	// test 100
+  "tmixed a() { return 2<=2; }",	// test 101
+  "tmixed a() { return 1>=1; }",	// test 102 
+
+  "tmixed a() { return 1.0<2.0; }",	// test 103
+  "tmixed a() { return !(1.0>2.0); }",	// test 104
+  "tmixed a() { return 2.0>1.0; }",	// test 105
+  "tmixed a() { return !(2.0<1.0); }",	// test 106
+  "tmixed a() { return 1.0<=2.0; }",	// test 107
+  "tmixed a() { return !(1.0>=2.0); }",	// test 108
+  "tmixed a() { return 2.0>=1.0; }",	// test 109
+  "tmixed a() { return !(2.0<=1.0); }",	// test 110
+  "tmixed a() { return 2.0<=2.0; }",	// test 111
+  "tmixed a() { return 1.0>=1.0; }",	// test 112 
+
+  "tmixed a() { return \"a\"<\"b\"; }",	// test 113
+  "tmixed a() { return !(\"a\">\"b\"); }",	// test 114
+  "tmixed a() { return \"b\">\"a\"; }",	// test 115
+  "tmixed a() { return !(\"b\"<\"a\"); }",	// test 116
+  "tmixed a() { return \"a\"<=\"b\"; }",	// test 117
+  "tmixed a() { return !(\"a\">=\"b\"); }",	// test 118
+  "tmixed a() { return \"b\">=\"a\"; }",	// test 119
+  "tmixed a() { return !(\"b\"<=\"a\"); }",	// test 120
+  "tmixed a() { return \"b\"<=\"b\"; }",	// test 121
+  "tmixed a() { return \"a\">=\"a\"; }",	// test 122 
+
+  "tmixed a() { return \"\"<\"b\"; }",	// test 123
+  "tmixed a() { return !(\"\">\"b\"); }",	// test 124
+  "tmixed a() { return \"b\">\"\"; }",	// test 125
+  "tmixed a() { return !(\"b\"<\"\"); }",	// test 126
+  "tmixed a() { return \"\"<=\"b\"; }",	// test 127
+  "tmixed a() { return !(\"\">=\"b\"); }",	// test 128
+  "tmixed a() { return \"b\">=\"\"; }",	// test 129
+  "tmixed a() { return !(\"b\"<=\"\"); }",	// test 130
+  "tmixed a() { return \"b\"<=\"b\"; }",	// test 131
+  "tmixed a() { return \"\">=\"\"; }",	// test 132 
 
 // hex construction
-  "=mixed a() { return 0; }\n"+	// test 120
+  "=mixed a() { return 0; }\n"+	// test 133
   "mixed b() { return 0x0; }",
-  "=mixed a() { return 1; }\n"+	// test 121
+  "=mixed a() { return 1; }\n"+	// test 134
   "mixed b() { return 0x1; }",
-  "=mixed a() { return 10; }\n"+	// test 122
+  "=mixed a() { return 10; }\n"+	// test 135
   "mixed b() { return 0xa; }",
-  "=mixed a() { return 16; }\n"+	// test 123
+  "=mixed a() { return 16; }\n"+	// test 136
   "mixed b() { return 0x10; }",
-  "=mixed a() { return 65535; }\n"+	// test 124
+  "=mixed a() { return 65535; }\n"+	// test 137
   "mixed b() { return 0xffff; }",
-  "=mixed a() { return 17*257*65537; }\n"+	// test 125
+  "=mixed a() { return 17*257*65537; }\n"+	// test 138
   "mixed b() { return 0x11111111; }",
 
 // octal construction
-  "=mixed a() { return 0; }\n"+	// test 126
+  "=mixed a() { return 0; }\n"+	// test 139
   "mixed b() { return 00; }",
-  "=mixed a() { return 1; }\n"+	// test 127
+  "=mixed a() { return 1; }\n"+	// test 140
   "mixed b() { return 01; }",
-  "=mixed a() { return 8; }\n"+	// test 128
+  "=mixed a() { return 8; }\n"+	// test 141
   "mixed b() { return 010; }",
-  "=mixed a() { return 64; }\n"+	// test 129
+  "=mixed a() { return 64; }\n"+	// test 142
   "mixed b() { return 0100; }",
-  "=mixed a() { return 1073741824; }\n"+	// test 130
+  "=mixed a() { return 1073741824; }\n"+	// test 143
   "mixed b() { return 010000000000; }",
-  "=mixed a() { return (8+1)*(8*8+1)*(8*8*8*8+1); }\n"+	// test 131
+  "=mixed a() { return (8+1)*(8*8+1)*(8*8*8*8+1); }\n"+	// test 144
   "mixed b() { return 011111111; }",
 
 // string construction tests
-  "=mixed a() { return 16; }\n"+	// test 132
+  "=mixed a() { return 16; }\n"+	// test 145
   "mixed b() { return \"\\20\"[0]; }",
-  "=mixed a() { return 16; }\n"+	// test 133
+  "=mixed a() { return 16; }\n"+	// test 146
   "mixed b() { return \"\\020\"[0]; }",
-  "=mixed a() { return 255; }\n"+	// test 134
+  "=mixed a() { return 255; }\n"+	// test 147
   "mixed b() { return \"\\377\"[0]; }",
-  "=mixed a() { return 4; }\n"+	// test 135
+  "=mixed a() { return 4; }\n"+	// test 148
   "mixed b() { return '\\4'; }",
-  "tmixed a() { return \"\\r\"[0]!='r'; }",	// test 136
-  "=mixed a() { return \"\\r\"[0]; }\n"+	// test 137
+  "tmixed a() { return \"\\r\"[0]!='r'; }",	// test 149
+  "=mixed a() { return \"\\r\"[0]; }\n"+	// test 150
   "mixed b() { return '\\r'; }",
-  "=mixed a() { return \"\\n\"[0]; }\n"+	// test 138
+  "=mixed a() { return \"\\n\"[0]; }\n"+	// test 151
   "mixed b() { return '\\n'; }",
 
 // testing +
-  "=mixed a() { return 1+1; }\n"+	// test 139
+  "=mixed a() { return 1+1; }\n"+	// test 152
   "mixed b() { return 2; }",
-  "=mixed a() { return 1+(-2); }\n"+	// test 140
+  "=mixed a() { return 1+(-2); }\n"+	// test 153
   "mixed b() { return -1; }",
-  "=mixed a() { return (-2)+(-2); }\n"+	// test 141
+  "=mixed a() { return (-2)+(-2); }\n"+	// test 154
   "mixed b() { return -4; }",
-  "=mixed a() { return \"hi\"+\"there\"; }\n"+	// test 142
+  "=mixed a() { return \"hi\"+\"there\"; }\n"+	// test 155
   "mixed b() { return \"hithere\"; }",
-  "=mixed a() { return \"human\"+\"number\"+666; }\n"+	// test 143
+  "=mixed a() { return \"human\"+\"number\"+666; }\n"+	// test 156
   "mixed b() { return \"humannumber666\"; }",
-  "=mixed a() { return \"human\"+(\"number\"+666); }\n"+	// test 144
+  "=mixed a() { return \"human\"+(\"number\"+666); }\n"+	// test 157
   "mixed b() { return \"humannumber666\"; }",
-  "=mixed a() { return (\"human\"+\"number\")+666; }\n"+	// test 145
+  "=mixed a() { return (\"human\"+\"number\")+666; }\n"+	// test 158
   "mixed b() { return \"humannumber666\"; }",
-  "=mixed a() { return (\"human\"+\"number\")+666+111; }\n"+	// test 146
+  "=mixed a() { return (\"human\"+\"number\")+666+111; }\n"+	// test 159
   "mixed b() { return \"humannumber666111\"; }",
-  "=mixed a() { return \"humannumber\"+(666+111); }\n"+	// test 147
+  "=mixed a() { return \"humannumber\"+(666+111); }\n"+	// test 160
   "mixed b() { return \"humannumber777\"; }",
-  "=mixed a() { return \"a\"+\"b\"+\"c\"+\"d\"+\"e\"+\"f\"+\"g\"+\"h\"+\"i\"+\"j\"+\"k\"+\"l\"+\"m\"+\"n\"+\"o\"+\"p\"+\"q\"+\"r\"+\"s\"+\"t\"+\"u\"+\"v\"+\"x\"+\"y\"; }\n"+	// test 148
+  "=mixed a() { return \"a\"+\"b\"+\"c\"+\"d\"+\"e\"+\"f\"+\"g\"+\"h\"+\"i\"+\"j\"+\"k\"+\"l\"+\"m\"+\"n\"+\"o\"+\"p\"+\"q\"+\"r\"+\"s\"+\"t\"+\"u\"+\"v\"+\"x\"+\"y\"; }\n"+	// test 161
   "mixed b() { return \"abcdefghijklmnopqrstuvxy\"; }",
-  "=mixed a() { return 1.0+1.0; }\n"+	// test 149
+  "=mixed a() { return 1.0+1.0; }\n"+	// test 162
   "mixed b() { return 2.0; }",
-  "=mixed a() { return 1.0+(-1.0); }\n"+	// test 150
+  "=mixed a() { return 1.0+(-1.0); }\n"+	// test 163
   "mixed b() { return 0.0; }",
-  "=mixed a() { return (-1.0)+(-1.0); }\n"+	// test 151
+  "=mixed a() { return (-1.0)+(-1.0); }\n"+	// test 164
   "mixed b() { return -2.0; }",
-  "emixed a() { return ({1,2,3})+({4,5,6}); }\n"+	// test 152
+  "emixed a() { return ({1,2,3})+({4,5,6}); }\n"+	// test 165
   "mixed b() { return ({1,2,3,4,5,6}); }",
-  "emixed a() { return (<1,2,3,4>)+(<4,5,6>); }\n"+	// test 153
+  "emixed a() { return (<1,2,3,4>)+(<4,5,6>); }\n"+	// test 166
   "mixed b() { return (<1,2,3,4,4,5,6>); }",
-  "emixed a() { return ([0:1,3:6])+([5:2,3:6]); }\n"+	// test 154
+  "emixed a() { return ([0:1,3:6])+([5:2,3:6]); }\n"+	// test 167
   "mixed b() { return ([0:1,3:6,3:6,5:2]); }",
-  "Emixed a() { return this_object() + this_object(); }\n",	// test 155
+  "Emixed a() { return this_object() + this_object(); }\n",	// test 168
 
 // testing -
-  "=mixed a() { return 10-3; }\n"+	// test 156
+  "=mixed a() { return 10-3; }\n"+	// test 169
   "mixed b() { return 7; }",
-  "=mixed a() { return 3-10; }\n"+	// test 157
+  "=mixed a() { return 3-10; }\n"+	// test 170
   "mixed b() { return -7; }",
-  "=mixed a() { return 10.0-3.0; }\n"+	// test 158
+  "=mixed a() { return 10.0-3.0; }\n"+	// test 171
   "mixed b() { return 7.0; }",
-  "=mixed a() { return 3.0-10.0; }\n"+	// test 159
+  "=mixed a() { return 3.0-10.0; }\n"+	// test 172
   "mixed b() { return -7.0; }",
-  "=mixed a() { return \"foobargazonk\"-\"o\"; }\n"+	// test 160
+  "=mixed a() { return \"foobargazonk\"-\"o\"; }\n"+	// test 173
   "mixed b() { return \"fbargaznk\"; }",
-  "emixed a() { return ({\"foo\",\"bar\",\"gazonk\"})-({\"foo\",\"gazonk\"}); }\n"+	// test 161
+  "emixed a() { return ({\"foo\",\"bar\",\"gazonk\"})-({\"foo\",\"gazonk\"}); }\n"+	// test 174
   "mixed b() { return ({\"bar\"}); }",
-  "emixed a() { return ({\"c\",\"foo\",\"bar\",\"gazonk\",\"a\",\"b\",})-({\"foo\",\"gazonk\"}); }\n"+	// test 162
+  "emixed a() { return ({\"c\",\"foo\",\"bar\",\"gazonk\",\"a\",\"b\",})-({\"foo\",\"gazonk\"}); }\n"+	// test 175
   "mixed b() { return ({\"c\",\"bar\",\"a\",\"b\"}); }",
-  "emixed a() { return (<\"foo\",\"bar\",\"gazonk\">)-(<\"foo\",\"gazonk\">); }\n"+	// test 163
+  "emixed a() { return (<\"foo\",\"bar\",\"gazonk\">)-(<\"foo\",\"gazonk\">); }\n"+	// test 176
   "mixed b() { return (<\"bar\">); }",
-  "emixed a() { return ([\"foo\":3,\"bar\":4,\"gazonk\":5])-([\"foo\":3,\"gazonk\":8]); }\n"+	// test 164
+  "emixed a() { return ([\"foo\":3,\"bar\":4,\"gazonk\":5])-([\"foo\":3,\"gazonk\":8]); }\n"+	// test 177
   "mixed b() { return ([\"bar\":4]); }",
 
 // testing ~
-  "=mixed a() { return -1-4; }\n"+	// test 165
+  "=mixed a() { return -1-4; }\n"+	// test 178
   "mixed b() { return ~4; }",
-  "=mixed a() { return -1-627893874; }\n"+	// test 166
+  "=mixed a() { return -1-627893874; }\n"+	// test 179
   "mixed b() { return ~627893874; }",
 
 // testing *
-  "=mixed a() { return 3*4; }\n"+	// test 167
+  "=mixed a() { return 3*4; }\n"+	// test 180
   "mixed b() { return 12; }",
-  "=mixed a() { return 4*3; }\n"+	// test 168
+  "=mixed a() { return 4*3; }\n"+	// test 181
   "mixed b() { return 12; }",
-  "=mixed a() { return 2*2*2*2*2; }\n"+	// test 169
+  "=mixed a() { return 2*2*2*2*2; }\n"+	// test 182
   "mixed b() { return 32; }",
-  "=mixed a() { return 3.0*4.0; }\n"+	// test 170
+  "=mixed a() { return 3.0*4.0; }\n"+	// test 183
   "mixed b() { return 12.0; }",
-  "=mixed a() { return 4.0*3.0; }\n"+	// test 171
+  "=mixed a() { return 4.0*3.0; }\n"+	// test 184
   "mixed b() { return 12.0; }",
-  "=mixed a() { return 2.0*2.0*2.0*2.0*2.0; }\n"+	// test 172
+  "=mixed a() { return 2.0*2.0*2.0*2.0*2.0; }\n"+	// test 185
   "mixed b() { return 32.0; }",
-  "=mixed a() { return ({\"foo\",\"bar\",\"gazonk\"})*\"-\"; }\n"+	// test 173
+  "=mixed a() { return ({\"foo\",\"bar\",\"gazonk\"})*\"-\"; }\n"+	// test 186
   "mixed b() { return \"foo-bar-gazonk\"; }",
 
 // testing /
-  "=mixed a() { return 12/3; }\n"+	// test 174
+  "=mixed a() { return 12/3; }\n"+	// test 187
   "mixed b() { return 4; }",
-  "=mixed a() { return 13/3; }\n"+	// test 175
+  "=mixed a() { return 13/3; }\n"+	// test 188
   "mixed b() { return 4; }",
-  "=mixed a() { return 14/3; }\n"+	// test 176
+  "=mixed a() { return 14/3; }\n"+	// test 189
   "mixed b() { return 4; }",
-  "=mixed a() { return 15/3; }\n"+	// test 177
+  "=mixed a() { return 15/3; }\n"+	// test 190
   "mixed b() { return 5; }",
-  "Emixed a() { return 15/0; }\n",	// test 178
-  "=mixed a() { return 12.0/3.0; }\n"+	// test 179
+  "Emixed a() { return 15/0; }\n",	// test 191
+  "=mixed a() { return 12.0/3.0; }\n"+	// test 192
   "mixed b() { return 4.0; }",
-  "=mixed a() { return 14.0/4.0; }\n"+	// test 180
+  "=mixed a() { return 14.0/4.0; }\n"+	// test 193
   "mixed b() { return 3.5; }",
-  "=mixed a() { return 15.0/3.0; }\n"+	// test 181
+  "=mixed a() { return 15.0/3.0; }\n"+	// test 194
   "mixed b() { return 5.0; }",
-  "Emixed a() { return 15.0/0.0; }\n",	// test 182
-  "emixed a() { return \"foo-bar-gazonk\"/\"-\"; }\n"+	// test 183
+  "Emixed a() { return 15.0/0.0; }\n",	// test 195
+  "emixed a() { return \"foo-bar-gazonk\"/\"-\"; }\n"+	// test 196
   "mixed b() { return ({\"foo\",\"bar\",\"gazonk\"}); }",
-  "emixed a() { return \"foobargazonk\"/\"\"; }\n"+	// test 184
+  "emixed a() { return \"foobargazonk\"/\"\"; }\n"+	// test 197
   "mixed b() { return ({\"f\",\"o\",\"o\",\"b\",\"a\",\"r\",\"g\",\"a\",\"z\",\"o\",\"n\",\"k\"}); }",
 
 // testing %
-  "=mixed a() { return 12%3; }\n"+	// test 185
+  "=mixed a() { return 12%3; }\n"+	// test 198
   "mixed b() { return 0; }",
-  "=mixed a() { return 13%3; }\n"+	// test 186
+  "=mixed a() { return 13%3; }\n"+	// test 199
   "mixed b() { return 1; }",
-  "=mixed a() { return 14%3; }\n"+	// test 187
+  "=mixed a() { return 14%3; }\n"+	// test 200
   "mixed b() { return 2; }",
-  "=mixed a() { return 15%3; }\n"+	// test 188
+  "=mixed a() { return 15%3; }\n"+	// test 201
   "mixed b() { return 0; }",
-  "Emixed a() { return 15 % 0; }\n",	// test 189
-  "=mixed a() { return 12.0 % 3.0; }\n"+	// test 190
+  "Emixed a() { return 15 % 0; }\n",	// test 202
+  "=mixed a() { return 12.0 % 3.0; }\n"+	// test 203
   "mixed b() { return 0.0; }",
-  "=mixed a() { return 13.0 % 3.0; }\n"+	// test 191
+  "=mixed a() { return 13.0 % 3.0; }\n"+	// test 204
   "mixed b() { return 1.0; }",
-  "=mixed a() { return 14.0 % 3.0; }\n"+	// test 192
+  "=mixed a() { return 14.0 % 3.0; }\n"+	// test 205
   "mixed b() { return 2.0; }",
-  "=mixed a() { return 14.5 % 3.0; }\n"+	// test 193
+  "=mixed a() { return 14.5 % 3.0; }\n"+	// test 206
   "mixed b() { return 2.5; }",
-  "=mixed a() { return 15.0 % 3.0; }\n"+	// test 194
+  "=mixed a() { return 15.0 % 3.0; }\n"+	// test 207
   "mixed b() { return 0.0; }",
-  "Emixed a() { return 15.0 % 0.0; }\n",	// test 195
+  "Emixed a() { return 15.0 % 0.0; }\n",	// test 208
 
 // testing &&
-  "=mixed a() { return 0 && 1; }\n"+	// test 196
+  "=mixed a() { return 0 && 1; }\n"+	// test 209
   "mixed b() { return 0; }",
-  "=mixed a() { return 1 && 0; }\n"+	// test 197
+  "=mixed a() { return 1 && 0; }\n"+	// test 210
   "mixed b() { return 0; }",
-  "=mixed a() { return 0 && 0; }\n"+	// test 198
+  "=mixed a() { return 0 && 0; }\n"+	// test 211
   "mixed b() { return 0; }",
-  "=mixed a() { return 1 && 1; }\n"+	// test 199
+  "=mixed a() { return 1 && 1; }\n"+	// test 212
   "mixed b() { return 1; }",
-  "=mixed a() { return 78 && 1; }\n"+	// test 200
+  "=mixed a() { return 78 && 1; }\n"+	// test 213
   "mixed b() { return 1; }",
-  "=mixed a() { return 78 && 99; }\n"+	// test 201
+  "=mixed a() { return 78 && 99; }\n"+	// test 214
   "mixed b() { return 99; }",
-  "=mixed a() { return 78 && 99; }\n"+	// test 202
+  "=mixed a() { return 78 && 99; }\n"+	// test 215
   "mixed b() { return 99; }",
 
 // testing ||
-  "=mixed a() { return 0 || 1; }\n"+	// test 203
+  "=mixed a() { return 0 || 1; }\n"+	// test 216
   "mixed b() { return 1; }",
-  "=mixed a() { return 1 || 0; }\n"+	// test 204
+  "=mixed a() { return 1 || 0; }\n"+	// test 217
   "mixed b() { return 1; }",
-  "=mixed a() { return 0 || 0; }\n"+	// test 205
+  "=mixed a() { return 0 || 0; }\n"+	// test 218
   "mixed b() { return 0; }",
-  "=mixed a() { return 1 || 1; }\n"+	// test 206
+  "=mixed a() { return 1 || 1; }\n"+	// test 219
   "mixed b() { return 1; }",
-  "=mixed a() { return 78 || 1; }\n"+	// test 207
+  "=mixed a() { return 78 || 1; }\n"+	// test 220
   "mixed b() { return 78; }",
-  "=mixed a() { return 78 || 0; }\n"+	// test 208
+  "=mixed a() { return 78 || 0; }\n"+	// test 221
   "mixed b() { return 78; }",
 
 // testing |
-  "=mixed a() { return 0 | 0; }\n"+	// test 209
+  "=mixed a() { return 0 | 0; }\n"+	// test 222
   "mixed b() { return 0; }",
-  "=mixed a() { return 1 | 1; }\n"+	// test 210
+  "=mixed a() { return 1 | 1; }\n"+	// test 223
   "mixed b() { return 1; }",
-  "=mixed a() { return 4 | 1; }\n"+	// test 211
+  "=mixed a() { return 4 | 1; }\n"+	// test 224
   "mixed b() { return 5; }",
-  "=mixed a() { return 1 | 9; }\n"+	// test 212
+  "=mixed a() { return 1 | 9; }\n"+	// test 225
   "mixed b() { return 9; }",
-  "emixed a() { return sort_array(({1,2,3,4,4}) | ({3,5,6})); }\n"+	// test 213
+  "emixed a() { return sort_array(({1,2,3,4,4}) | ({3,5,6})); }\n"+	// test 226
   "mixed b() { return ({1,2,3,4,4,5,6}); }",
-  "emixed a() { return (<4,5,6>) | (<5,5,5>); }\n"+	// test 214
+  "emixed a() { return (<4,5,6>) | (<5,5,5>); }\n"+	// test 227
   "mixed b() { return (<4,5,5,5,6>) ; }",
-  "emixed a() { return ([-4:8,8:7]) | ([3:3,8:3]); }\n"+	// test 215
+  "emixed a() { return ([-4:8,8:7]) | ([3:3,8:3]); }\n"+	// test 228
   "mixed b() { return ([-4:8,8:3,3:3]) ; }",
 
 // testing &
-  "=mixed a() { return 0 & 0; }\n"+	// test 216
+  "=mixed a() { return 0 & 0; }\n"+	// test 229
   "mixed b() { return 0; }",
-  "=mixed a() { return 1 & 1; }\n"+	// test 217
+  "=mixed a() { return 1 & 1; }\n"+	// test 230
   "mixed b() { return 1; }",
-  "=mixed a() { return 4 & 1; }\n"+	// test 218
+  "=mixed a() { return 4 & 1; }\n"+	// test 231
   "mixed b() { return 0; }",
-  "=mixed a() { return 1 & 9; }\n"+	// test 219
+  "=mixed a() { return 1 & 9; }\n"+	// test 232
   "mixed b() { return 1; }",
-  "emixed a() { return ({1,2,3,4,4}) & ({3,5,6}); }\n"+	// test 220
+  "emixed a() { return ({1,2,3,4,4}) & ({3,5,6}); }\n"+	// test 233
   "mixed b() { return ({3}); }",
-  "emixed a() { return (<4,5,6>) & (<5,5,5>); }\n"+	// test 221
+  "emixed a() { return (<4,5,6>) & (<5,5,5>); }\n"+	// test 234
   "mixed b() { return (<5>) ; }",
-  "emixed a() { return ([-4:8,8:7]) & ([3:3,8:3]); }\n"+	// test 222
+  "emixed a() { return ([-4:8,8:7]) & ([3:3,8:3]); }\n"+	// test 235
   "mixed b() { return ([8:3]) ; }",
 
 // testing ^
-  "=mixed a() { return 0 ^ 0; }\n"+	// test 223
+  "=mixed a() { return 0 ^ 0; }\n"+	// test 236
   "mixed b() { return 0; }",
-  "=mixed a() { return 1 ^ 1; }\n"+	// test 224
+  "=mixed a() { return 1 ^ 1; }\n"+	// test 237
   "mixed b() { return 0; }",
-  "=mixed a() { return 4 ^ 1; }\n"+	// test 225
+  "=mixed a() { return 4 ^ 1; }\n"+	// test 238
   "mixed b() { return 5; }",
-  "=mixed a() { return 1 ^ 9; }\n"+	// test 226
+  "=mixed a() { return 1 ^ 9; }\n"+	// test 239
   "mixed b() { return 8; }",
-  "emixed a() { return ({1,2,3,4,4}) ^ ({3,5,6}); }\n"+	// test 227
+  "emixed a() { return ({1,2,3,4,4}) ^ ({3,5,6}); }\n"+	// test 240
   "mixed b() { return ({1,2,4,4,5,6}); }",
-  "emixed a() { return (<4,5,6>) ^ (<5,5,5>); }\n"+	// test 228
+  "emixed a() { return (<4,5,6>) ^ (<5,5,5>); }\n"+	// test 241
   "mixed b() { return (<4,5,5,6>) ; }",
-  "emixed a() { return ([-4:8,8:7]) ^ ([3:3,8:3]); }\n"+	// test 229
+  "emixed a() { return ([-4:8,8:7]) ^ ([3:3,8:3]); }\n"+	// test 242
   "mixed b() { return ([-4:8,3:3]) ; }",
 
 // testing <<
-  "=mixed a() { return 1<<0; }\n"+	// test 230
+  "=mixed a() { return 1<<0; }\n"+	// test 243
   "mixed b() { return 1; }",
-  "=mixed a() { return 1<<1; }\n"+	// test 231
+  "=mixed a() { return 1<<1; }\n"+	// test 244
   "mixed b() { return 2; }",
-  "=mixed a() { return 1<<10; }\n"+	// test 232
+  "=mixed a() { return 1<<10; }\n"+	// test 245
   "mixed b() { return 1024; }",
-  "=mixed a() { return 5<<3; }\n"+	// test 233
+  "=mixed a() { return 5<<3; }\n"+	// test 246
   "mixed b() { return 40; }",
 
 // testing >>
-  "=mixed a() { return 9>>2; }\n"+	// test 234
+  "=mixed a() { return 9>>2; }\n"+	// test 247
   "mixed b() { return 2; }",
-  "=mixed a() { return 1>>1; }\n"+	// test 235
+  "=mixed a() { return 1>>1; }\n"+	// test 248
   "mixed b() { return 0; }",
-  "=mixed a() { return 1024>>10; }\n"+	// test 236
+  "=mixed a() { return 1024>>10; }\n"+	// test 249
   "mixed b() { return 1; }",
-  "=mixed a() { return 47>>3; }\n"+	// test 237
+  "=mixed a() { return 47>>3; }\n"+	// test 250
   "mixed b() { return 5; }",
 
 // testing ? :
-  "tmixed a() { return 0?0:1; }",	// test 238
-  "tmixed a() { return 1?1:0; }",	// test 239
-  "tmixed a() { return \"\"?1:0; }",	// test 240
-  "tmixed a() { return !0?1:0; }",	// test 241
-  "tmixed a() { return !(!1)?1:0; }",	// test 242
-  "tmixed a() { return this_object()?1:0; }",	// test 243
-  "tmixed a() { return a?1:0; }",	// test 244 // a is the test function
-  "tmixed a() { return 0.0?1:0; }",	// test 245
-  "tmixed a() { return ([])?1:0; }",	// test 246
-  "tmixed a() { return ({})?1:0; }",	// test 247
-  "tmixed a() { return (<>)?1:0; }",	// test 248
-  "tmixed a() { return object_program(this_object())?1:0; }",	// test 249
+  "tmixed a() { return 0?0:1; }",	// test 251
+  "tmixed a() { return 1?1:0; }",	// test 252
+  "tmixed a() { return \"\"?1:0; }",	// test 253
+  "tmixed a() { return !0?1:0; }",	// test 254
+  "tmixed a() { return !(!1)?1:0; }",	// test 255
+  "tmixed a() { return this_object()?1:0; }",	// test 256
+  "tmixed a() { return a?1:0; }",	// test 257 // a is the test function
+  "tmixed a() { return 0.0?1:0; }",	// test 258
+  "tmixed a() { return ([])?1:0; }",	// test 259
+  "tmixed a() { return ({})?1:0; }",	// test 260
+  "tmixed a() { return (<>)?1:0; }",	// test 261
+  "tmixed a() { return object_program(this_object())?1:0; }",	// test 262
 
 // testing indexing
-  "=mixed a() { return \"foo\"[0]; }\n"+	// test 250
+  "=mixed a() { return \"foo\"[0]; }\n"+	// test 263
   "mixed b() { return 'f'; }",
-  "=mixed a() { return \"foo\"[1]; }\n"+	// test 251
+  "=mixed a() { return \"foo\"[1]; }\n"+	// test 264
   "mixed b() { return 'o'; }",
-  "=mixed a() { return \"foo\"[2]; }\n"+	// test 252
+  "=mixed a() { return \"foo\"[2]; }\n"+	// test 265
   "mixed b() { return 'o'; }",
-  "=mixed a() { return \"foo\"[-1]; }\n"+	// test 253
+  "=mixed a() { return \"foo\"[-1]; }\n"+	// test 266
   "mixed b() { return 'o'; }",
-  "=mixed a() { return \"foo\"[-2]; }\n"+	// test 254
+  "=mixed a() { return \"foo\"[-2]; }\n"+	// test 267
   "mixed b() { return 'o'; }",
-  "=mixed a() { return \"foo\"[-3]; }\n"+	// test 255
+  "=mixed a() { return \"foo\"[-3]; }\n"+	// test 268
   "mixed b() { return 'f'; }",
-  "=mixed a() { return ({'f','o','o'})[0]; }\n"+	// test 256
+  "=mixed a() { return ({'f','o','o'})[0]; }\n"+	// test 269
   "mixed b() { return 'f'; }",
-  "=mixed a() { return ({'f','o','o'})[1]; }\n"+	// test 257
+  "=mixed a() { return ({'f','o','o'})[1]; }\n"+	// test 270
   "mixed b() { return 'o'; }",
-  "=mixed a() { return ({'f','o','o'})[2]; }\n"+	// test 258
+  "=mixed a() { return ({'f','o','o'})[2]; }\n"+	// test 271
   "mixed b() { return 'o'; }",
-  "=mixed a() { return ({'f','o','o'})[-1]; }\n"+	// test 259
+  "=mixed a() { return ({'f','o','o'})[-1]; }\n"+	// test 272
   "mixed b() { return 'o'; }",
-  "=mixed a() { return ({'f','o','o'})[-2]; }\n"+	// test 260
+  "=mixed a() { return ({'f','o','o'})[-2]; }\n"+	// test 273
   "mixed b() { return 'o'; }",
-  "=mixed a() { return ({'f','o','o'})[-3]; }\n"+	// test 261
+  "=mixed a() { return ({'f','o','o'})[-3]; }\n"+	// test 274
   "mixed b() { return 'f'; }",
-  "=mixed a() { return ([0:'f',1:'o',2:'o'])[0]; }\n"+	// test 262
+  "=mixed a() { return ([0:'f',1:'o',2:'o'])[0]; }\n"+	// test 275
   "mixed b() { return 'f'; }",
-  "=mixed a() { return ([0:'f',1:'o',2:'o'])[1]; }\n"+	// test 263
+  "=mixed a() { return ([0:'f',1:'o',2:'o'])[1]; }\n"+	// test 276
   "mixed b() { return 'o'; }",
-  "=mixed a() { return ([0:'f',1:'o',2:'o'])[2]; }\n"+	// test 264
+  "=mixed a() { return ([0:'f',1:'o',2:'o'])[2]; }\n"+	// test 277
   "mixed b() { return 'o'; }",
-  "=mixed a() { return ([0:'f',1:'o',2:'o'])[3]; }\n"+	// test 265
+  "=mixed a() { return ([0:'f',1:'o',2:'o'])[3]; }\n"+	// test 278
   "mixed b() { return 0; }",
-  "=mixed a() { return ([0:'f',1:'o',2:'o'])[-1]; }\n"+	// test 266
+  "=mixed a() { return ([0:'f',1:'o',2:'o'])[-1]; }\n"+	// test 279
   "mixed b() { return 0; }",
-  "=mixed a() { return (<'f','o','o'>)['o']; }\n"+	// test 267
+  "=mixed a() { return (<'f','o','o'>)['o']; }\n"+	// test 280
   "mixed b() { return 1; }",
-  "=mixed a() { return (<'f','o','o'>)['f']; }\n"+	// test 268
+  "=mixed a() { return (<'f','o','o'>)['f']; }\n"+	// test 281
   "mixed b() { return 1; }",
-  "=mixed a() { return (<'f','o','o'>)['b']; }\n"+	// test 269
+  "=mixed a() { return (<'f','o','o'>)['b']; }\n"+	// test 282
   "mixed b() { return 0; }",
-  "=mixed a() { return (<'f','o','o'>)[-1]; }\n"+	// test 270
+  "=mixed a() { return (<'f','o','o'>)[-1]; }\n"+	// test 283
   "mixed b() { return 0; }",
 
 // index assigning
-  "=mixed a() { mixed a=({1}); a[0]=2; return equal(a,({2})); }\n"+	// test 271
+  "=mixed a() { mixed a=({1}); a[0]=2; return equal(a,({2})); }\n"+	// test 284
   "mixed b() { return 1; }",
-  "=mixed a() { mixed a=(<1>); a[1]=2; return equal(a,(<1>)); }\n"+	// test 272
+  "=mixed a() { mixed a=(<1>); a[1]=2; return equal(a,(<1>)); }\n"+	// test 285
   "mixed b() { return 1; }",
-  "=mixed a() { mixed a=(<1>); a[0]=2; return equal(a,(<1,0>)); }\n"+	// test 273
+  "=mixed a() { mixed a=(<1>); a[0]=2; return equal(a,(<1,0>)); }\n"+	// test 286
   "mixed b() { return 1; }",
-  "=mixed a() { mixed a=(<1>); a[1]=0; return equal(a,(<>)); }\n"+	// test 274
+  "=mixed a() { mixed a=(<1>); a[1]=0; return equal(a,(<>)); }\n"+	// test 287
   "mixed b() { return 1; }",
-  "=mixed a() { mixed a=(<1>); a[0]=0; return equal(a,(<1>)); }\n"+	// test 275
+  "=mixed a() { mixed a=(<1>); a[0]=0; return equal(a,(<1>)); }\n"+	// test 288
   "mixed b() { return 1; }",
-  "=mixed a() { mixed a=([1:1]); a[0]=0; return equal(a,([1:1,0:0])); }\n"+	// test 276
+  "=mixed a() { mixed a=([1:1]); a[0]=0; return equal(a,([1:1,0:0])); }\n"+	// test 289
   "mixed b() { return 1; }",
-  "=mixed a() { mixed a=([1:1]); a[1]=0; return equal(a,([1:0])); }\n"+	// test 277
+  "=mixed a() { mixed a=([1:1]); a[1]=0; return equal(a,([1:0])); }\n"+	// test 290
   "mixed b() { return 1; }",
 
-  "Pstring a() { return \"/test\"; }\n"+	// test 278
+  "Pstring a() { return \"/test\"; }\n"+	// test 291
   "string b() { return \"public int q,w,e,r; mixed t; mixed getw() { return w; } void setw(int _) { w=_; }\"; }",
-  "=mixed a() { return clone((program)\"/test\")->q; }\n"+	// test 279
+  "=mixed a() { return clone((program)\"/test\")->q; }\n"+	// test 292
   "mixed b() { return 0; }",
-  "=mixed a() { return clone((program)\"/test\")->w; }\n"+	// test 280
+  "=mixed a() { return clone((program)\"/test\")->w; }\n"+	// test 293
   "mixed b() { return 0; }",
-  "=mixed a() { return clone((program)\"/test\")->e; }\n"+	// test 281
+  "=mixed a() { return clone((program)\"/test\")->e; }\n"+	// test 294
   "mixed b() { return 0; }",
-  "=mixed a() { return clone((program)\"/test\")->r; }\n"+	// test 282
+  "=mixed a() { return clone((program)\"/test\")->r; }\n"+	// test 295
   "mixed b() { return 0; }",
-  "=mixed a() { return clone((program)\"/test\")->getw(); }\n"+	// test 283
+  "=mixed a() { return clone((program)\"/test\")->getw(); }\n"+	// test 296
   "mixed b() { return 0; }",
-  "=mixed a() { object o=clone((program)\"/test\"); o->setw(17); return o->w; }\n"+	// test 284
+  "=mixed a() { object o=clone((program)\"/test\"); o->setw(17); return o->w; }\n"+	// test 297
   "mixed b() { return 17; }",
-  "=mixed a() { object o=clone((program)\"/test\"); o->w=17; return o->getw(); }\n"+	// test 285
+  "=mixed a() { object o=clone((program)\"/test\"); o->w=17; return o->getw(); }\n"+	// test 298
   "mixed b() { return 17; }",
 
-  "=mixed a() { return clone((program)\"/test\")[\"q\"]; }\n"+	// test 286
+  "=mixed a() { return clone((program)\"/test\")[\"q\"]; }\n"+	// test 299
   "mixed b() { return 0; }",
-  "=mixed a() { return clone((program)\"/test\")[\"w\"]; }\n"+	// test 287
+  "=mixed a() { return clone((program)\"/test\")[\"w\"]; }\n"+	// test 300
   "mixed b() { return 0; }",
-  "=mixed a() { return clone((program)\"/test\")[\"e\"]; }\n"+	// test 288
+  "=mixed a() { return clone((program)\"/test\")[\"e\"]; }\n"+	// test 301
   "mixed b() { return 0; }",
-  "=mixed a() { return clone((program)\"/test\")[\"r\"]; }\n"+	// test 289
+  "=mixed a() { return clone((program)\"/test\")[\"r\"]; }\n"+	// test 302
   "mixed b() { return 0; }",
-  "=mixed a() { return clone((program)\"/test\")[\"getw\"](); }\n"+	// test 290
+  "=mixed a() { return clone((program)\"/test\")[\"getw\"](); }\n"+	// test 303
   "mixed b() { return 0; }",
-  "=mixed a() { object o=clone((program)\"/test\"); o[\"setw\"](17); return o[\"w\"]; }\n"+	// test 291
+  "=mixed a() { object o=clone((program)\"/test\"); o[\"setw\"](17); return o[\"w\"]; }\n"+	// test 304
   "mixed b() { return 17; }",
-  "=mixed a() { object o=clone((program)\"/test\"); o[\"w\"]=17; return o[\"getw\"](); }\n"+	// test 292
+  "=mixed a() { object o=clone((program)\"/test\"); o[\"w\"]=17; return o[\"getw\"](); }\n"+	// test 305
   "mixed b() { return 17; }",
 
 // testing range
-  "=mixed a() { return \"foObar\"[0..0]; }\n"+	// test 293
+  "=mixed a() { return \"foObar\"[0..0]; }\n"+	// test 306
   "mixed b() { return \"f\"; }",
-  "=mixed a() { return \"foobargazonk\"[3..5]; }\n"+	// test 294
+  "=mixed a() { return \"foobargazonk\"[3..5]; }\n"+	// test 307
   "mixed b() { return \"bar\"; }",
-  "=mixed a() { return \"foo\"[1..10]; }\n"+	// test 295
+  "=mixed a() { return \"foo\"[1..10]; }\n"+	// test 308
   "mixed b() { return \"oo\"; }",
-  "=mixed a() { return \"foo\"[-100..0]; }\n"+	// test 296
+  "=mixed a() { return \"foo\"[-100..0]; }\n"+	// test 309
   "mixed b() { return \"f\"; }",
-  "=mixed a() { return \"foo\"[-100..100]; }\n"+	// test 297
+  "=mixed a() { return \"foo\"[-100..100]; }\n"+	// test 310
   "mixed b() { return \"foo\"; }",
-  "=mixed a() { return \"foo\"[1..0]; }\n"+	// test 298
+  "=mixed a() { return \"foo\"[1..0]; }\n"+	// test 311
   "mixed b() { return \"\"; }",
-  "=mixed a() { return \"foo\"[0..-100]; }\n"+	// test 299
+  "=mixed a() { return \"foo\"[0..-100]; }\n"+	// test 312
   "mixed b() { return \"\"; }",
-  "emixed a() { return ({1,2,3})[0..0]; }\n"+	// test 300
+  "emixed a() { return ({1,2,3})[0..0]; }\n"+	// test 313
   "mixed b() { return ({1}); }",
-  "emixed a() { return ({1,2,3})[1..2]; }\n"+	// test 301
+  "emixed a() { return ({1,2,3})[1..2]; }\n"+	// test 314
   "mixed b() { return ({2,3}); }",
-  "emixed a() { return ({1,2,3})[2..10]; }\n"+	// test 302
+  "emixed a() { return ({1,2,3})[2..10]; }\n"+	// test 315
   "mixed b() { return ({3}); }",
-  "emixed a() { return ({1,2,3})[-100..0]; }\n"+	// test 303
+  "emixed a() { return ({1,2,3})[-100..0]; }\n"+	// test 316
   "mixed b() { return ({1}); }",
-  "emixed a() { return ({1,2,3})[-100..100]; }\n"+	// test 304
+  "emixed a() { return ({1,2,3})[-100..100]; }\n"+	// test 317
   "mixed b() { return ({1,2,3}); }",
-  "emixed a() { return ({1,2,3})[1..0]; }\n"+	// test 305
+  "emixed a() { return ({1,2,3})[1..0]; }\n"+	// test 318
   "mixed b() { return ({}); }",
-  "emixed a() { return ({1,2,3})[0..-100]; }\n"+	// test 306
+  "emixed a() { return ({1,2,3})[0..-100]; }\n"+	// test 319
   "mixed b() { return ({}); }",
 
 // testing @
-  "emixed a() { return ({1,2,3}); }\n"+	// test 307
+  "emixed a() { return ({1,2,3}); }\n"+	// test 320
   "mixed b() { return lambda(mixed ... x) { return x; }(@a()); }",
-  "emixed a() { return explode(\"foo\",\"\"); }\n"+	// test 308
+  "emixed a() { return explode(\"foo\",\"\"); }\n"+	// test 321
   "mixed b() { return lambda(mixed ... x) { return x; }(@a()); }",
-  "=mixed a() { mixed *a=({1,2,3}); return lambda(mixed ... x) { return x; }(@a) !=a; }\n"+	// test 309
+  "=mixed a() { mixed *a=({1,2,3}); return lambda(mixed ... x) { return x; }(@a) !=a; }\n"+	// test 322
   "mixed b() { return 1; }",
 
 // testing +=
-  "=mixed a() { int a=1; a+=10; return a; }\n"+	// test 310
+  "=mixed a() { int a=1; a+=10; return a; }\n"+	// test 323
   "mixed b() { return 11; }",
 // testing -=
-  "=mixed a() { int a=1; a-=10; return a; }\n"+	// test 311
+  "=mixed a() { int a=1; a-=10; return a; }\n"+	// test 324
   "mixed b() { return -9; }",
 // testing &=
-  "=mixed a() { int a=3; a&=10; return a; }\n"+	// test 312
+  "=mixed a() { int a=3; a&=10; return a; }\n"+	// test 325
   "mixed b() { return 2; }",
 // testing |=
-  "=mixed a() { int a=3; a|=10; return a; }\n"+	// test 313
+  "=mixed a() { int a=3; a|=10; return a; }\n"+	// test 326
   "mixed b() { return 11; }",
 // testing ^=
-  "=mixed a() { int a=3; a^=10; return a; }\n"+	// test 314
+  "=mixed a() { int a=3; a^=10; return a; }\n"+	// test 327
   "mixed b() { return 9; }",
 // testing <<=
-  "=mixed a() { int a=3; a<<=2; return a; }\n"+	// test 315
+  "=mixed a() { int a=3; a<<=2; return a; }\n"+	// test 328
   "mixed b() { return 12; }",
 // testing <<=
-  "=mixed a() { int a=12; a>>=2; return a; }\n"+	// test 316
+  "=mixed a() { int a=12; a>>=2; return a; }\n"+	// test 329
   "mixed b() { return 3; }",
 // testing *=
-  "=mixed a() { int a=12; a*=2; return a; }\n"+	// test 317
+  "=mixed a() { int a=12; a*=2; return a; }\n"+	// test 330
   "mixed b() { return 24; }",
 // testing /=
-  "=mixed a() { int a=12; a/=2; return a; }\n"+	// test 318
+  "=mixed a() { int a=12; a/=2; return a; }\n"+	// test 331
   "mixed b() { return 6; }",
 // testing %=
-  "=mixed a() { int a=12; a%=7; return a; }\n"+	// test 319
+  "=mixed a() { int a=12; a%=7; return a; }\n"+	// test 332
   "mixed b() { return 5; }",
 
 // testing control structs
-  "=mixed a() { return 1; }\n"+	// test 320
+  "=mixed a() { return 1; }\n"+	// test 333
   "mixed b() { return 1; }",
-  "=mixed a() { return lambda(){return 1;} (); }\n"+	// test 321
+  "=mixed a() { return lambda(){return 1;} (); }\n"+	// test 334
   "mixed b() { return 1 ; }",
-  "=mixed a() { if(0) return 0; else return 1; }\n"+	// test 322
+  "=mixed a() { if(0) return 0; else return 1; }\n"+	// test 335
   "mixed b() { return 1; }",
-  "=mixed a() { if(0) return 0; return 1; }\n"+	// test 323
+  "=mixed a() { if(0) return 0; return 1; }\n"+	// test 336
   "mixed b() { return 1; }",
-  "=mixed a() { if(1) return 1; else return 0; }\n"+	// test 324
+  "=mixed a() { if(1) return 1; else return 0; }\n"+	// test 337
   "mixed b() { return 1; }",
-  "=mixed a() { if(\"\") return 1; else return 0; }\n"+	// test 325
+  "=mixed a() { if(\"\") return 1; else return 0; }\n"+	// test 338
   "mixed b() { return 1; }",
-  "=mixed a() { if(!0) return 1; else return 0; }\n"+	// test 326
+  "=mixed a() { if(!0) return 1; else return 0; }\n"+	// test 339
   "mixed b() { return 1; }",
-  "=mixed a() { if(!(!1)) return 1; else return 0; }\n"+	// test 327
+  "=mixed a() { if(!(!1)) return 1; else return 0; }\n"+	// test 340
   "mixed b() { return 1; }",
-  "=mixed a() { if(this_object()) return 1; else return 0; }\n"+	// test 328
+  "=mixed a() { if(this_object()) return 1; else return 0; }\n"+	// test 341
   "mixed b() { return 1; }",
-  "=mixed a() { if(a) return 1; else return 0; }\n"+	// test 329
-  "mixed b() { return 1; }",   "=mixed a() { if(0.0) return 1; else return 0; }\n"+	// test 330
+  "=mixed a() { if(a) return 1; else return 0; }\n"+	// test 342
+  "mixed b() { return 1; }",   "=mixed a() { if(0.0) return 1; else return 0; }\n"+	// test 343
   "mixed b() { return 1; }",
-  "=mixed a() { if(([])) return 1; else return 0; }\n"+	// test 331
+  "=mixed a() { if(([])) return 1; else return 0; }\n"+	// test 344
   "mixed b() { return 1; }",
-  "=mixed a() { if(({})) return 1; else return 0; }\n"+	// test 332
+  "=mixed a() { if(({})) return 1; else return 0; }\n"+	// test 345
   "mixed b() { return 1; }",
-  "=mixed a() { if((<>)) return 1; else return 0; }\n"+	// test 333
+  "=mixed a() { if((<>)) return 1; else return 0; }\n"+	// test 346
   "mixed b() { return 1; }",
-  "=mixed a() { if(object_program(this_object())) return 1; else return 0; }\n"+	// test 334
+  "=mixed a() { if(object_program(this_object())) return 1; else return 0; }\n"+	// test 347
   "mixed b() { return 1; }",
 
-  "=mixed a() { int e; for(e=0;e<10;e++) break; return e; }\n"+	// test 335
+  "=mixed a() { int e; for(e=0;e<10;e++) break; return e; }\n"+	// test 348
   "mixed b() { return 0; }",
-  "=mixed a() { int e; for(e=0;e<10;e++) continue; return e; }\n"+	// test 336
+  "=mixed a() { int e; for(e=0;e<10;e++) continue; return e; }\n"+	// test 349
   "mixed b() { return 10; }",
-  "=mixed a() { while(1) break; return 1; }\n"+	// test 337
+  "=mixed a() { while(1) break; return 1; }\n"+	// test 350
   "mixed b() { return 1; }",
-  "=mixed a() { while(1) if(1) break; return 1; }\n"+	// test 338
+  "=mixed a() { while(1) if(1) break; return 1; }\n"+	// test 351
   "mixed b() { return 1; }",
-  "=mixed a() { int e;string t=\"\"; for(e=0;e<10;e++) t+=e; return t; }\n"+	// test 339
+  "=mixed a() { int e;string t=\"\"; for(e=0;e<10;e++) t+=e; return t; }\n"+	// test 352
   "mixed b() { return \"0123456789\"; }",
-  "=mixed a() { int e;string t=\"\"; for(e=0;e>-10;e--) t+=e; return t; }\n"+	// test 340
+  "=mixed a() { int e;string t=\"\"; for(e=0;e>-10;e--) t+=e; return t; }\n"+	// test 353
   "mixed b() { return \"0-1-2-3-4-5-6-7-8-9\"; }",
-  "=mixed a() { int e;string t=\"\"; foreach(({7,6,3,8}),e) t+=e; return t; }\n"+	// test 341
+  "=mixed a() { int e;string t=\"\"; foreach(({7,6,3,8}),e) t+=e; return t; }\n"+	// test 354
   "mixed b() { return \"7638\"; }",
-  "=mixed a() { string s;if(1) foreach(({}),s); else foreach(({}),s); return 1; }\n"+	// test 342
+  "=mixed a() { string s;if(1) foreach(({}),s); else foreach(({}),s); return 1; }\n"+	// test 355
   "mixed b() { return 1; }",
-  "=mixed a() { int e;string t=\"\"; e=0; do{ t+=e; }while(++e<6); return t; }\n"+	// test 343
+  "=mixed a() { int e;string t=\"\"; e=0; do{ t+=e; }while(++e<6); return t; }\n"+	// test 356
   "mixed b() { return \"012345\";; }",
-  "=mixed a() { int e;string t=\"\"; e=8; while(--e) t+=e; return t; }\n"+	// test 344
+  "=mixed a() { int e;string t=\"\"; e=8; while(--e) t+=e; return t; }\n"+	// test 357
   "mixed b() { return \"7654321\";; }",
-  "=mixed a() { int e;string t=\"\"; e=8; while(e--) t+=e; return t; }\n"+	// test 345
+  "=mixed a() { int e;string t=\"\"; e=8; while(e--) t+=e; return t; }\n"+	// test 358
   "mixed b() { return \"76543210\";; }",
-  "=mixed a() { int e;string t=\"\"; e=0; while(++e<6) t+=e; return t; }\n"+	// test 346
+  "=mixed a() { int e;string t=\"\"; e=0; while(++e<6) t+=e; return t; }\n"+	// test 359
   "mixed b() { return \"12345\";; }",
-  "=mixed a() { int e=1;string t=\"\"; while(e<20){t+=e;e*=2;} return t; }\n"+	// test 347
+  "=mixed a() { int e=1;string t=\"\"; while(e<20){t+=e;e*=2;} return t; }\n"+	// test 360
   "mixed b() { return \"124816\";; }",
-  "=mixed a() { switch(0) { case \"\": } return 1; }\n"+	// test 348
+  "=mixed a() { switch(0) { case \"\": } return 1; }\n"+	// test 361
   "mixed b() { return 1; }",
-  "=mixed a() { switch(1) { case 1: return 1; default: } return 0; }\n"+	// test 349
+  "=mixed a() { switch(1) { case 1: return 1; default: } return 0; }\n"+	// test 362
   "mixed b() { return 1; }",
-  "=mixed a() { switch(2) { case 1: return 0; default: return 1;} return 0; }\n"+	// test 350
+  "=mixed a() { switch(2) { case 1: return 0; default: return 1;} return 0; }\n"+	// test 363
   "mixed b() { return 1; }",
-  "=mixed a() { switch(1) { default: return 0; case 1: return 1; } return 0; }\n"+	// test 351
+  "=mixed a() { switch(1) { default: return 0; case 1: return 1; } return 0; }\n"+	// test 364
   "mixed b() { return 1; }",
-  "=mixed a() { switch(2) { default: return 1; case 1: return 0; } return 0; }\n"+	// test 352
+  "=mixed a() { switch(2) { default: return 1; case 1: return 0; } return 0; }\n"+	// test 365
   "mixed b() { return 1; }",
-  "=mixed a() { switch(0) { case \"apa\": case 1.0: return 0; }  return 1; }\n"+	// test 353
+  "=mixed a() { switch(0) { case \"apa\": case 1.0: return 0; }  return 1; }\n"+	// test 366
   "mixed b() { return 1; }",
-  "=mixed a() { switch(\"apa\") { case \"apa\": return 1; case 1.0: }  return 0; }\n"+	// test 354
+  "=mixed a() { switch(\"apa\") { case \"apa\": return 1; case 1.0: }  return 0; }\n"+	// test 367
   "mixed b() { return 1; }",
-  "=mixed a() { switch(1.0) { case \"apa\": return 0; case 1.0: return 1; } return 0; }\n"+	// test 355
+  "=mixed a() { switch(1.0) { case \"apa\": return 0; case 1.0: return 1; } return 0; }\n"+	// test 368
   "mixed b() { return 1; }",
-  "=mixed a() { switch(\"sune\") { case \"gunnel\": return 0; case \"gunnar\": return 1; case \"sune\": case \"gusten\": return 0; } return 0; ; }\n"+	// test 356
-  "mixed b() { return ; }",
-  "=mixed a() { switch(\"a\") { case \"a\": return 1; case \"b\": case \"c\": case \"d\": case 'a': case '1': case '0': default: } return 0; }\n"+	// test 357
+  "=mixed a() { switch(\"sune\") { case \"gunnel\": return 0; case \"gunnar\": return 1; case \"sune\": case \"gusten\": return 0; } return 0; }\n"+	// test 369
+  "mixed b() { return 0; }",
+  "=mixed a() { switch(\"a\") { case \"a\": return 1; case \"b\": case \"c\": case \"d\": case 'a': case '1': case '0': default: } return 0; }\n"+	// test 370
   "mixed b() { return 1; }",
-  "=mixed a() { switch(\"b\") { case \"a\": return 0; case \"b\": return 1; case \"c\": case \"d\": case 'a': case '1': case '0': default: } return 0; }\n"+	// test 358
+  "=mixed a() { switch(\"b\") { case \"a\": return 0; case \"b\": return 1; case \"c\": case \"d\": case 'a': case '1': case '0': default: } return 0; }\n"+	// test 371
   "mixed b() { return 1; }",
-  "=mixed a() { switch(\"c\") { case \"a\": case \"b\": return 0; case \"c\": return 1; case \"d\": case 'a': case '1': case '0': default: } return 0; }\n"+	// test 359
+  "=mixed a() { switch(\"c\") { case \"a\": case \"b\": return 0; case \"c\": return 1; case \"d\": case 'a': case '1': case '0': default: } return 0; }\n"+	// test 372
   "mixed b() { return 1; }",
-  "=mixed a() { switch(\"d\") { case \"a\": case \"b\": case \"c\": return 0; case \"d\": return 1; case 'a': case '1': case '0': default: } return 0; }\n"+	// test 360
+  "=mixed a() { switch(\"d\") { case \"a\": case \"b\": case \"c\": return 0; case \"d\": return 1; case 'a': case '1': case '0': default: } return 0; }\n"+	// test 373
   "mixed b() { return 1; }",
-  "=mixed a() { switch('a') { case \"a\": case \"b\": case \"c\": case \"d\": return 0; case 'a': return 1; case '1': case '0': default: } return 0; }\n"+	// test 361
+  "=mixed a() { switch('a') { case \"a\": case \"b\": case \"c\": case \"d\": return 0; case 'a': return 1; case '1': case '0': default: } return 0; }\n"+	// test 374
   "mixed b() { return 1; }",
-  "=mixed a() { switch('1') { case \"a\": case \"b\": case \"c\": case \"d\": case 'a': return 0; case '1': return 1; case '0': default: } return 0; }\n"+	// test 362
+  "=mixed a() { switch('1') { case \"a\": case \"b\": case \"c\": case \"d\": case 'a': return 0; case '1': return 1; case '0': default: } return 0; }\n"+	// test 375
   "mixed b() { return 1; }",
-  "=mixed a() { switch('0') { case \"a\": case \"b\": case \"c\": case \"d\": case 'a': case '1': return 0; case '0': return 1; default: } return 0; }\n"+	// test 363
+  "=mixed a() { switch('0') { case \"a\": case \"b\": case \"c\": case \"d\": case 'a': case '1': return 0; case '0': return 1; default: } return 0; }\n"+	// test 376
   "mixed b() { return 1; }",
-  "=mixed a() { switch(\"a\") { case \"a\": return 1; case \"b\": return 2; case \"c\": return 3; case \"d\": return 4; case 'a': return 5; case '1': return 6; case '0': return 7; default: return 8; } return 9; }\n"+	// test 364
+  "=mixed a() { switch(\"a\") { case \"a\": return 1; case \"b\": return 2; case \"c\": return 3; case \"d\": return 4; case 'a': return 5; case '1': return 6; case '0': return 7; default: return 8; } return 9; }\n"+	// test 377
   "mixed b() { return 1; }",
-  "=mixed a() { switch(\"b\") { case \"a\": return 1; case \"b\": return 2; case \"c\": return 3; case \"d\": return 4; case 'a': return 5; case '1': return 6; case '0': return 7; default: return 8; } return 9; }\n"+	// test 365
+  "=mixed a() { switch(\"b\") { case \"a\": return 1; case \"b\": return 2; case \"c\": return 3; case \"d\": return 4; case 'a': return 5; case '1': return 6; case '0': return 7; default: return 8; } return 9; }\n"+	// test 378
   "mixed b() { return 2; }",
-  "=mixed a() { switch(\"c\") { case \"a\": return 1; case \"b\": return 2; case \"c\": return 3; case \"d\": return 4; case 'a': return 5; case '1': return 6; case '0': return 7; default: return 8; } return 9; }\n"+	// test 366
+  "=mixed a() { switch(\"c\") { case \"a\": return 1; case \"b\": return 2; case \"c\": return 3; case \"d\": return 4; case 'a': return 5; case '1': return 6; case '0': return 7; default: return 8; } return 9; }\n"+	// test 379
   "mixed b() { return 3; }",
-  "=mixed a() { switch(\"d\") { case \"a\": return 1; case \"b\": return 2; case \"c\": return 3; case \"d\": return 4; case 'a': return 5; case '1': return 6; case '0': return 7; default: return 8; } return 9; }\n"+	// test 367
+  "=mixed a() { switch(\"d\") { case \"a\": return 1; case \"b\": return 2; case \"c\": return 3; case \"d\": return 4; case 'a': return 5; case '1': return 6; case '0': return 7; default: return 8; } return 9; }\n"+	// test 380
   "mixed b() { return 4; }",
-  "=mixed a() { switch('a') { case \"a\": return 1; case \"b\": return 2; case \"c\": return 3; case \"d\": return 4; case 'a': return 5; case '1': return 6; case '0': return 7; default: return 8; } return 9; }\n"+	// test 368
+  "=mixed a() { switch('a') { case \"a\": return 1; case \"b\": return 2; case \"c\": return 3; case \"d\": return 4; case 'a': return 5; case '1': return 6; case '0': return 7; default: return 8; } return 9; }\n"+	// test 381
   "mixed b() { return 5; }",
-  "=mixed a() { switch('1') { case \"a\": return 1; case \"b\": return 2; case \"c\": return 3; case \"d\": return 4; case 'a': return 5; case '1': return 6; case '0': return 7; default: return 8; } return 9; }\n"+	// test 369
+  "=mixed a() { switch('1') { case \"a\": return 1; case \"b\": return 2; case \"c\": return 3; case \"d\": return 4; case 'a': return 5; case '1': return 6; case '0': return 7; default: return 8; } return 9; }\n"+	// test 382
   "mixed b() { return 6; }",
-  "=mixed a() { switch('0') { case \"a\": return 1; case \"b\": return 2; case \"c\": return 3; case \"d\": return 4; case 'a': return 5; case '1': return 6; case '0': return 7; default: return 8; } return 9; }\n"+	// test 370
+  "=mixed a() { switch('0') { case \"a\": return 1; case \"b\": return 2; case \"c\": return 3; case \"d\": return 4; case 'a': return 5; case '1': return 6; case '0': return 7; default: return 8; } return 9; }\n"+	// test 383
   "mixed b() { return 7; }",
-  "=mixed a() { switch('9') { case \"a\": return 1; case \"b\": return 2; case \"c\": return 3; case \"d\": return 4; case 'a': return 5; case '1': return 6; case '0': return 7; default: return 8; } return 9; }\n"+	// test 371
+  "=mixed a() { switch('9') { case \"a\": return 1; case \"b\": return 2; case \"c\": return 3; case \"d\": return 4; case 'a': return 5; case '1': return 6; case '0': return 7; default: return 8; } return 9; }\n"+	// test 384
   "mixed b() { return 8; }",
 
-  "=mixed a() { int e;string t=\"\"; for(e=0;e<10;e++) switch(e) { default: t+=e; case 4..8: } return t; }\n"+	// test 372
+  "=mixed a() { int e;string t=\"\"; for(e=0;e<10;e++) switch(e) { default: t+=e; case 4..8: } return t; }\n"+	// test 385
   "mixed b() { return \"01239\"; }",
-  "=mixed a() { float e,q; q=0.0; for(e=0.1;e<10.0;e+=1.0) switch(e) { default: q+=e; case 4.0..8.0: } return q; }\n"+	// test 373
+  "=mixed a() { float e,q; q=0.0; for(e=0.1;e<10.0;e+=1.0) switch(e) { default: q+=e; case 4.0..8.0: } return q; }\n"+	// test 386
   "mixed b() { return 0.1+1.1+2.1+3.1+8.1+9.1; }",
 
 // testing preprocessor
 // #define
-  "=mixed a() { \n#define FOOa 1\nreturn FOOa;\n; }\n"+	// test 374
+  "=mixed a() { \n#define FOOa 1\nreturn FOOa;\n; }\n"+	// test 387
   "mixed b() { return 1; }",
 
-  "=mixed a() { \n#define FOOb 17\n#undef FOOb\n#define FOOb 1\nreturn FOOb;\n; }\n"+	// test 375
+  "=mixed a() { \n#define FOOb 17\n#undef FOOb\n#define FOOb 1\nreturn FOOb;\n; }\n"+	// test 388
   "mixed b() { return 1; }",
 
-  "cmixed a() { \n#define FOOc FOOc FOO\nFOO\n; }\n",	// test 376
+  "cmixed a() { \n#define FOOc FOOc FOO\nFOO\n; }\n",	// test 389
 
-  "cmixed a() { \n#error FOOd\nFOO\n; }\n",	// test 377
+  "cmixed a() { \n#error FOOd\nFOO\n; }\n",	// test 390
 
 // /* */
-  "=mixed a() { \n/* return 99; * /  /* */\nreturn 1;\n; }\n"+	// test 378
+  "=mixed a() { \n/* return 99; * /  /* */\nreturn 1;\n; }\n"+	// test 391
   "mixed b() { return 1; }",
 
 // //
-  "=mixed a() { \n// return 99;\nreturn 1;\n; }\n"+	// test 379
+  "=mixed a() { \n// return 99;\nreturn 1;\n; }\n"+	// test 392
   "mixed b() { return 1; }",
 
 // #if
 
 
 
-  "=mixed a() { \n#if 1\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 380
+  "=mixed a() { \n#if 1\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 393
   "mixed b() { return 1; }",
-  "=mixed a() { \n#if 0\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 381
+  "=mixed a() { \n#if 0\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 394
   "mixed b() { return 0; }",
 
 // #if ==
-  "=mixed a() { \n#if 1==1\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 382
+  "=mixed a() { \n#if 1==1\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 395
   "mixed b() { return 1; }",
-  "=mixed a() { \n#if 1==2\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 383
+  "=mixed a() { \n#if 1==2\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 396
   "mixed b() { return 0; }",
 
 // #if !=
-  "=mixed a() { \n#if 1!=2\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 384
+  "=mixed a() { \n#if 1!=2\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 397
   "mixed b() { return 1; }",
-  "=mixed a() { \n#if 1!=1\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 385
+  "=mixed a() { \n#if 1!=1\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 398
   "mixed b() { return 0; }",
 
 // #if ( )
-  "=mixed a() { \n#if (((1))==1) \nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 386
+  "=mixed a() { \n#if (((1))==1) \nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 399
   "mixed b() { return 1; }",
-  "=mixed a() { \n#if ((1)==(2)) \nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 387
+  "=mixed a() { \n#if ((1)==(2)) \nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 400
   "mixed b() { return 0; }",
 
 // #if -1
-  "=mixed a() { \n#if -1 \nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 388
+  "=mixed a() { \n#if -1 \nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 401
   "mixed b() { return 1; }",
-  "=mixed a() { \n#if (-1) \nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 389
+  "=mixed a() { \n#if (-1) \nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 402
   "mixed b() { return 1; }",
-  "=mixed a() { \n#if (-1==0-1) \nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 390
+  "=mixed a() { \n#if (-1==0-1) \nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 403
   "mixed b() { return 1; }",
 
 // #if ~
-  "=mixed a() { \n#if (-1-1==~1) \nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 391
+  "=mixed a() { \n#if (-1-1==~1) \nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 404
   "mixed b() { return 1; }",
 
 // #if ?:
-  "=mixed a() { \n#if 17 == ( 1 ? 17 : 18 ) \nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 392
+  "=mixed a() { \n#if 17 == ( 1 ? 17 : 18 ) \nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 405
   "mixed b() { return 1; }",
-  "=mixed a() { \n#if 18 == ( 0 ? 17 : 18 ) \nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 393
+  "=mixed a() { \n#if 18 == ( 0 ? 17 : 18 ) \nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 406
   "mixed b() { return 1; }",
 
 // #if ||
-  "=mixed a() { \n#if 10 == ( 10 || 20 ) \nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 394
+  "=mixed a() { \n#if 10 == ( 10 || 20 ) \nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 407
   "mixed b() { return 1; }",
-  "=mixed a() { \n#if 20 == ( 0 || 20 ) \nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 395
+  "=mixed a() { \n#if 20 == ( 0 || 20 ) \nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 408
   "mixed b() { return 1; }",
 
 // #if &&
-  "=mixed a() { \n#if 0 == ( 0 && 20 ) \nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 396
+  "=mixed a() { \n#if 0 == ( 0 && 20 ) \nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 409
   "mixed b() { return 1; }",
-  "=mixed a() { \n#if 20 == ( 10 && 20 ) \nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 397
+  "=mixed a() { \n#if 20 == ( 10 && 20 ) \nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 410
   "mixed b() { return 1; }",
 
 // #if |
-  "=mixed a() { \n#if 3 == ( 1 | 2 ) \nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 398
+  "=mixed a() { \n#if 3 == ( 1 | 2 ) \nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 411
   "mixed b() { return 1; }",
-  "=mixed a() { \n#if 2 == ( 2 | 2 ) \nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 399
+  "=mixed a() { \n#if 2 == ( 2 | 2 ) \nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 412
   "mixed b() { return 1; }",
 
 // #if ^
-  "=mixed a() { \n#if 0 == ( 2 ^ 2 ) \nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 400
+  "=mixed a() { \n#if 0 == ( 2 ^ 2 ) \nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 413
   "mixed b() { return 1; }",
-  "=mixed a() { \n#if 3 == ( 1 ^ 2 ) \nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 401
+  "=mixed a() { \n#if 3 == ( 1 ^ 2 ) \nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 414
   "mixed b() { return 1; }",
 
 // #if &
-  "=mixed a() { \n#if 0 == ( 1 & 2 ) \nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 402
+  "=mixed a() { \n#if 0 == ( 1 & 2 ) \nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 415
   "mixed b() { return 1; }",
-  "=mixed a() { \n#if 2 == ( 2 & 7 ) \nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 403
+  "=mixed a() { \n#if 2 == ( 2 & 7 ) \nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 416
   "mixed b() { return 1; }",
 
 // #if <= >= < > ! strings, floats
@@ -877,271 +900,271 @@ int main(int argc, string *argv)
 
 
 
-  "=mixed a() { \n#if 1<2\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 404
+  "=mixed a() { \n#if 1<2\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 417
   "mixed b() { return 1; }",
-  "=mixed a() { \n#if !(1>2)\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 405
+  "=mixed a() { \n#if !(1>2)\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 418
   "mixed b() { return 1; }",
-  "=mixed a() { \n#if 2>1\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 406
+  "=mixed a() { \n#if 2>1\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 419
   "mixed b() { return 1; }",
-  "=mixed a() { \n#if !(2<1)\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 407
+  "=mixed a() { \n#if !(2<1)\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 420
   "mixed b() { return 1; }",
-  "=mixed a() { \n#if 1<=2\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 408
+  "=mixed a() { \n#if 1<=2\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 421
   "mixed b() { return 1; }",
-  "=mixed a() { \n#if !(1>=2)\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 409
+  "=mixed a() { \n#if !(1>=2)\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 422
   "mixed b() { return 1; }",
-  "=mixed a() { \n#if 2>=1\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 410
+  "=mixed a() { \n#if 2>=1\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 423
   "mixed b() { return 1; }",
-  "=mixed a() { \n#if !(2<=1)\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 411
+  "=mixed a() { \n#if !(2<=1)\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 424
   "mixed b() { return 1; }",
-  "=mixed a() { \n#if 2<=2\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 412
+  "=mixed a() { \n#if 2<=2\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 425
   "mixed b() { return 1; }",
-  "=mixed a() { \n#if 1>=1\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 413
+  "=mixed a() { \n#if 1>=1\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 426
   "mixed b() { return 1; }", 
 
-  "=mixed a() { \n#if 1.0<2.0\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 414
+  "=mixed a() { \n#if 1.0<2.0\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 427
   "mixed b() { return 1; }",
-  "=mixed a() { \n#if !(1.0>2.0)\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 415
+  "=mixed a() { \n#if !(1.0>2.0)\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 428
   "mixed b() { return 1; }",
-  "=mixed a() { \n#if 2.0>1.0\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 416
+  "=mixed a() { \n#if 2.0>1.0\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 429
   "mixed b() { return 1; }",
-  "=mixed a() { \n#if !(2.0<1.0)\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 417
+  "=mixed a() { \n#if !(2.0<1.0)\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 430
   "mixed b() { return 1; }",
-  "=mixed a() { \n#if 1.0<=2.0\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 418
+  "=mixed a() { \n#if 1.0<=2.0\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 431
   "mixed b() { return 1; }",
-  "=mixed a() { \n#if !(1.0>=2.0)\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 419
+  "=mixed a() { \n#if !(1.0>=2.0)\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 432
   "mixed b() { return 1; }",
-  "=mixed a() { \n#if 2.0>=1.0\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 420
+  "=mixed a() { \n#if 2.0>=1.0\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 433
   "mixed b() { return 1; }",
-  "=mixed a() { \n#if !(2.0<=1.0)\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 421
+  "=mixed a() { \n#if !(2.0<=1.0)\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 434
   "mixed b() { return 1; }",
-  "=mixed a() { \n#if 2.0<=2.0\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 422
+  "=mixed a() { \n#if 2.0<=2.0\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 435
   "mixed b() { return 1; }",
-  "=mixed a() { \n#if 1.0>=1.0\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 423
+  "=mixed a() { \n#if 1.0>=1.0\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 436
   "mixed b() { return 1; }", 
 
-  "=mixed a() { \n#if \"a\"<\"b\"\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 424
+  "=mixed a() { \n#if \"a\"<\"b\"\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 437
   "mixed b() { return 1; }",
-  "=mixed a() { \n#if !(\"a\">\"b\")\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 425
+  "=mixed a() { \n#if !(\"a\">\"b\")\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 438
   "mixed b() { return 1; }",
-  "=mixed a() { \n#if \"b\">\"a\"\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 426
+  "=mixed a() { \n#if \"b\">\"a\"\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 439
   "mixed b() { return 1; }",
-  "=mixed a() { \n#if !(\"b\"<\"a\")\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 427
+  "=mixed a() { \n#if !(\"b\"<\"a\")\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 440
   "mixed b() { return 1; }",
-  "=mixed a() { \n#if \"a\"<=\"b\"\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 428
+  "=mixed a() { \n#if \"a\"<=\"b\"\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 441
   "mixed b() { return 1; }",
-  "=mixed a() { \n#if !(\"a\">=\"b\")\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 429
+  "=mixed a() { \n#if !(\"a\">=\"b\")\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 442
   "mixed b() { return 1; }",
-  "=mixed a() { \n#if \"b\">=\"a\"\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 430
+  "=mixed a() { \n#if \"b\">=\"a\"\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 443
   "mixed b() { return 1; }",
-  "=mixed a() { \n#if !(\"b\"<=\"a\")\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 431
+  "=mixed a() { \n#if !(\"b\"<=\"a\")\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 444
   "mixed b() { return 1; }",
-  "=mixed a() { \n#if \"b\"<=\"b\"\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 432
+  "=mixed a() { \n#if \"b\"<=\"b\"\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 445
   "mixed b() { return 1; }",
-  "=mixed a() { \n#if \"a\">=\"a\"\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 433
+  "=mixed a() { \n#if \"a\">=\"a\"\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 446
   "mixed b() { return 1; }", 
 
 // #if <<
-  "=mixed a() { \n#if 1<<10==1024\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 434
+  "=mixed a() { \n#if 1<<10==1024\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 447
   "mixed b() { return 1; }",
-  "=mixed a() { \n#if 5<<3==40\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 435
+  "=mixed a() { \n#if 5<<3==40\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 448
   "mixed b() { return 1; }",
 
 // #if >>
-  "=mixed a() { \n#if 1024>>10==1\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 436
+  "=mixed a() { \n#if 1024>>10==1\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 449
   "mixed b() { return 1; }",
-  "=mixed a() { \n#if 47>>3==5\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 437
+  "=mixed a() { \n#if 47>>3==5\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 450
   "mixed b() { return 1; }",
 
 // #if +
-  "=mixed a() { \n#if 1024+10==1034\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 438
+  "=mixed a() { \n#if 1024+10==1034\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 451
   "mixed b() { return 1; }",
-  "=mixed a() { \n#if 47+3==50\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 439
+  "=mixed a() { \n#if 47+3==50\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 452
   "mixed b() { return 1; }",
 
 // #if -
-  "=mixed a() { \n#if 1024-10==1014\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 440
+  "=mixed a() { \n#if 1024-10==1014\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 453
   "mixed b() { return 1; }",
-  "=mixed a() { \n#if 47-3==44\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 441
+  "=mixed a() { \n#if 47-3==44\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 454
   "mixed b() { return 1; }",
 
 // #if *
-  "=mixed a() { \n#if 1024*10==10240\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 442
+  "=mixed a() { \n#if 1024*10==10240\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 455
   "mixed b() { return 1; }",
 
 // #if /
-  "=mixed a() { \n#if 47/3==15\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 443
+  "=mixed a() { \n#if 47/3==15\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 456
   "mixed b() { return 1; }",
 
-  "cmixed a() { \n#if 1/0\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n",	// test 444
+  "cmixed a() { \n#if 1/0\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n",	// test 457
 
 // #if %
-  "=mixed a() { \n#if 47%3==2\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 445
+  "=mixed a() { \n#if 47%3==2\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 458
   "mixed b() { return 1; }",
-  "cmixed a() { \n#if 1%0\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n",	// test 446
+  "cmixed a() { \n#if 1%0\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n",	// test 459
 
 // #if [ ]
-  "=mixed a() { \n#if \"foo\"[0]=='f'\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 447
+  "=mixed a() { \n#if \"foo\"[0]=='f'\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 460
   "mixed b() { return 1; }",
 
 // #if defined
-  "=mixed a() { \n#define FOOe 0\n#if defined(FOOe)\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 448
+  "=mixed a() { \n#define FOOe 0\n#if defined(FOOe)\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 461
   "mixed b() { return 1; }",
 
 // #if define < x
-  "=mixed a() { \n#define FOOf 1\n#if FOOf < 2\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 449
+  "=mixed a() { \n#define FOOf 1\n#if FOOf < 2\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 462
   "mixed b() { return 1; }",
 
 // #if define < x
-  "=mixed a() { \n#define FOOg 1\n#if FOOg < 0\nreturn 0;\n#else\nreturn 1;\n#endif\n; }\n"+	// test 450
+  "=mixed a() { \n#define FOOg 1\n#if FOOg < 0\nreturn 0;\n#else\nreturn 1;\n#endif\n; }\n"+	// test 463
   "mixed b() { return 1; }",
 
 // #if x < define
-  "=mixed a() { \n#define FOOh 1\n#if 0 < FOOh\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 451
+  "=mixed a() { \n#define FOOh 1\n#if 0 < FOOh\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 464
   "mixed b() { return 1; }",
 
 // #if x < define
-  "=mixed a() { \n#define FOOi 1\n#if 2 < FOOi\nreturn 0;\n#else\nreturn 1;\n#endif\n; }\n"+	// test 452
+  "=mixed a() { \n#define FOOi 1\n#if 2 < FOOi\nreturn 0;\n#else\nreturn 1;\n#endif\n; }\n"+	// test 465
   "mixed b() { return 1; }",
 
 // #if efun
 // see test for add_efun()
 
 // #if /* */
-  "=mixed a() { \n#if 1 /* trying to be mean //  * / */ /* /* */\nreturn 1;  /* */\n#define foo\n# 1 \"---\"\n#undef foo\n#else /* trying to be mean //  * / */ /* /* */\nreturn 0;  //\n#endif /* trying to be mean //  * / */ /* /* */\n; }\n"+	// test 453
+  "=mixed a() { \n#if 1 /* trying to be mean //  * / */ /* /* */\nreturn 1;  /* */\n#define foo\n# 1 \"---\"\n#undef foo\n#else /* trying to be mean //  * / */ /* /* */\nreturn 0;  //\n#endif /* trying to be mean //  * / */ /* /* */\n; }\n"+	// test 466
   "mixed b() { return 1; }",
 
-  "=mixed a() { \n#if 0 /* trying to be mean //  * / */ /* /* */\nreturn 0; /* */\n#define foo\n# 1 \"---\"\n#undef foo\n#else /* trying to be mean //  * / */ /* /* */\nreturn 1; //\n#endif /* trying to be mean //  * / */ /* /* */\n; }\n"+	// test 454
+  "=mixed a() { \n#if 0 /* trying to be mean //  * / */ /* /* */\nreturn 0; /* */\n#define foo\n# 1 \"---\"\n#undef foo\n#else /* trying to be mean //  * / */ /* /* */\nreturn 1; //\n#endif /* trying to be mean //  * / */ /* /* */\n; }\n"+	// test 467
   "mixed b() { return 1; }",
 
 // #if //
-  "=mixed a() { \n#if 1 //* trying to be mean //  */ */\nreturn 1;\n#else //* trying to be mean //  */ */\nreturn 0;\n#endif //* trying to be mean //  */ */\n; }\n"+	// test 455
+  "=mixed a() { \n#if 1 //* trying to be mean //  */ */\nreturn 1;\n#else //* trying to be mean //  */ */\nreturn 0;\n#endif //* trying to be mean //  */ */\n; }\n"+	// test 468
   "mixed b() { return 1; }",
 
-  "=mixed a() { \n#if 0 //* trying to be mean //  */ */\nreturn 0;\n#else //* trying to be mean //  */ */\nreturn 1;\n#endif //* trying to be mean // */ */\n; }\n"+	// test 456
+  "=mixed a() { \n#if 0 //* trying to be mean //  */ */\nreturn 0;\n#else //* trying to be mean //  */ */\nreturn 1;\n#endif //* trying to be mean // */ */\n; }\n"+	// test 469
   "mixed b() { return 1; }",
 
-  "=mixed a() { \n#define FOOj\n#if defined(FOOj)\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 457
+  "=mixed a() { \n#define FOOj\n#if defined(FOOj)\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 470
   "mixed b() { return 1; }",
 
-  "=mixed a() { \n#if defined(FOOk)\nreturn 0;\n#else\nreturn 1;\n#endif\n; }\n"+	// test 458
+  "=mixed a() { \n#if defined(FOOk)\nreturn 0;\n#else\nreturn 1;\n#endif\n; }\n"+	// test 471
   "mixed b() { return 1; }",
 
 // #ifdef
-  "=mixed a() { \n#ifdef FOOl\nreturn 0;\n#else\nreturn 1;\n#endif\n; }\n"+	// test 459
+  "=mixed a() { \n#ifdef FOOl\nreturn 0;\n#else\nreturn 1;\n#endif\n; }\n"+	// test 472
   "mixed b() { return 1; }",
 
-  "=mixed a() { \n#define FOOm\n#ifdef FOOm\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 460
+  "=mixed a() { \n#define FOOm\n#ifdef FOOm\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 473
   "mixed b() { return 1; }",
 
 // #ifndef
-  "=mixed a() { \n#define FOOo\n#ifndef FOOo\nreturn 0;\n#else\nreturn 1;\n#endif\n; }\n"+	// test 461
+  "=mixed a() { \n#define FOOo\n#ifndef FOOo\nreturn 0;\n#else\nreturn 1;\n#endif\n; }\n"+	// test 474
   "mixed b() { return 1; }",
 
-  "=mixed a() { \n#ifndef FOOp\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 462
+  "=mixed a() { \n#ifndef FOOp\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 475
   "mixed b() { return 1; }",
 
 // #else
-  "=mixed a() { \n#if 1\nreturn 1;\n#else\nFEL\n#if 0\nFEL\n#else\nFEL\n#endif\nreturn 0;\n#endif\n; }\n"+	// test 463
+  "=mixed a() { \n#if 1\nreturn 1;\n#else\nFEL\n#if 0\nFEL\n#else\nFEL\n#endif\nreturn 0;\n#endif\n; }\n"+	// test 476
   "mixed b() { return 1; }",
 
-  "=mixed a() { \n#if 0\nFEL\n#if 0\nFEL\n#else\nFEL\n#if 1\nFEL\n#else\nFEL\n#endif\n#endif\nreturn 0;\n#else\nreturn 1;\n#endif\n; }\n"+	// test 464
+  "=mixed a() { \n#if 0\nFEL\n#if 0\nFEL\n#else\nFEL\n#if 1\nFEL\n#else\nFEL\n#endif\n#endif\nreturn 0;\n#else\nreturn 1;\n#endif\n; }\n"+	// test 477
   "mixed b() { return 1; }",
 
 // #elif
-  "=mixed a() { \n#if 0\nreturn 0;\n#elif 0\nreturn 0;\n#else\nreturn 1;\n#endif\n; }\n"+	// test 465
+  "=mixed a() { \n#if 0\nreturn 0;\n#elif 0\nreturn 0;\n#else\nreturn 1;\n#endif\n; }\n"+	// test 478
   "mixed b() { return 1; }",
 
-  "=mixed a() { \n#if 0\nreturn 0;\n#elif 1\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 466
+  "=mixed a() { \n#if 0\nreturn 0;\n#elif 1\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 479
   "mixed b() { return 1; }",
 
-  "=mixed a() { \n#if 1\nreturn 1;\n#elif 1\nreturn 0;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 467
+  "=mixed a() { \n#if 1\nreturn 1;\n#elif 1\nreturn 0;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 480
   "mixed b() { return 1; }",
 
 // #elseif
-  "=mixed a() { \n#if 0\nreturn 0;\n#elseif 0\nreturn 0;\n#else\nreturn 1;\n#endif\n; }\n"+	// test 468
+  "=mixed a() { \n#if 0\nreturn 0;\n#elseif 0\nreturn 0;\n#else\nreturn 1;\n#endif\n; }\n"+	// test 481
   "mixed b() { return 1; }",
 
-  "=mixed a() { \n#if 0\nreturn 0;\n#elseif 0\nreturn 0;\n#elseif 1\nreturn 1;\n#elseif 0\nreturn 0;\n#elseif 0\nreturn 0;\n#else\nFEL\n#endif\n; }\n"+	// test 469
+  "=mixed a() { \n#if 0\nreturn 0;\n#elseif 0\nreturn 0;\n#elseif 1\nreturn 1;\n#elseif 0\nreturn 0;\n#elseif 0\nreturn 0;\n#else\nFEL\n#endif\n; }\n"+	// test 482
   "mixed b() { return 1; }",
 
-  "=mixed a() { \n#if 0\nreturn 0;\n#elseif 1\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 470
+  "=mixed a() { \n#if 0\nreturn 0;\n#elseif 1\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 483
   "mixed b() { return 1; }",
 
-  "=mixed a() { \n#if 1\nreturn 1;\n#elseif 1\nreturn 0;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 471
+  "=mixed a() { \n#if 1\nreturn 1;\n#elseif 1\nreturn 0;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 484
   "mixed b() { return 1; }",
 
 // #pragma
 // FIXME: add tests for real pragmas
-  "=mixed a() { \n#pragma whatever\nreturn 1;\n; }\n"+	// test 472
+  "=mixed a() { \n#pragma whatever\nreturn 1;\n; }\n"+	// test 485
   "mixed b() { return 1; }",
 
 // #include
 // FIXME add test for #include
 
 // tests for file module
-  "tmixed a() { return programp((program)\"/precompiled/file\"); }",	// test 473
-  "tmixed a() { return programp((program)\"/precompiled/port\"); }",	// test 474
-  "=mixed a() { object o; o=clone((program)\"/precompiled/file\"); destruct(o); return 1; }\n"+	// test 475
+  "tmixed a() { return programp((program)\"/precompiled/file\"); }",	// test 486
+  "tmixed a() { return programp((program)\"/precompiled/port\"); }",	// test 487
+  "=mixed a() { object o; o=clone((program)\"/precompiled/file\"); destruct(o); return 1; }\n"+	// test 488
   "mixed b() { return 1; }",
 
 // - file->open
 // - file->close
-  "=mixed a() { object o=clone((program)\"/precompiled/file\"); return o->open(\"conftest\",\"wct\") && o->close(); }\n"+	// test 476
+  "=mixed a() { object o=clone((program)\"/precompiled/file\"); return o->open(\"conftest\",\"wct\") && o->close(); }\n"+	// test 489
   "mixed b() { return 1; }",
 
 // - file_stat
-  "=mixed a() { return file_stat(\"conftest\")[1]; }\n"+	// test 477
+  "=mixed a() { return file_stat(\"conftest\")[1]; }\n"+	// test 490
   "mixed b() { return 0; }",
 
 // - rm
-  "tmixed a() { return rm(\"conftest\"); }",	// test 478
-  "=mixed a() { return file_stat(\"conftest\"); }\n"+	// test 479
+  "tmixed a() { return rm(\"conftest\"); }",	// test 491
+  "=mixed a() { return file_stat(\"conftest\"); }\n"+	// test 492
   "mixed b() { return 0; }",
 
 // - file->write
-  "=mixed a() { int e; object o=clone((program)\"/precompiled/file\"); if(!o->open(\"conftest\",\"wct\")) return -1; e=o->write(\"sune\"); if(!o->close()) return -1; return e; }\n"+	// test 480
+  "=mixed a() { int e; object o=clone((program)\"/precompiled/file\"); if(!o->open(\"conftest\",\"wct\")) return -1; e=o->write(\"sune\"); if(!o->close()) return -1; return e; }\n"+	// test 493
   "mixed b() { return 4; }",
 
 // - file->read
-  "=mixed a() { string s; object o=clone((program)\"/precompiled/file\"); if(!o->open(\"conftest\",\"r\")) return -1; s=o->read(4); if(!o->close()) return -1; return s; }\n"+	// test 481
+  "=mixed a() { string s; object o=clone((program)\"/precompiled/file\"); if(!o->open(\"conftest\",\"r\")) return -1; s=o->read(4); if(!o->close()) return -1; return s; }\n"+	// test 494
   "mixed b() { return \"sune\"; }",
 
-  "=mixed a() { string s; object o=clone((program)\"/precompiled/file\"); if(!o->open(\"conftest\",\"r\")) return -1; s=o->read(999999); if(!o->close()) return -1; return s; }\n"+	// test 482
+  "=mixed a() { string s; object o=clone((program)\"/precompiled/file\"); if(!o->open(\"conftest\",\"r\")) return -1; s=o->read(999999); if(!o->close()) return -1; return s; }\n"+	// test 495
   "mixed b() { return \"sune\"; }",
 
-  "=mixed a() { int e; object o=clone((program)\"/precompiled/file\"); if(!o->open(\"conftest\",\"wct\")) return -1; e=o->write(sprintf(\"%'+-*'100000s\",\"\")); if(!o->close()) return -1; return e; }\n"+	// test 483
+  "=mixed a() { int e; object o=clone((program)\"/precompiled/file\"); if(!o->open(\"conftest\",\"wct\")) return -1; e=o->write(sprintf(\"%'+-*'100000s\",\"\")); if(!o->close()) return -1; return e; }\n"+	// test 496
   "mixed b() { return 100000; }",
 
-  "=mixed a() { string s; object o=clone((program)\"/precompiled/file\"); if(!o->open(\"conftest\",\"r\")) return -1; s=o->read(9999999); if(!o->close()) return -1; return s; }\n"+	// test 484
+  "=mixed a() { string s; object o=clone((program)\"/precompiled/file\"); if(!o->open(\"conftest\",\"r\")) return -1; s=o->read(9999999); if(!o->close()) return -1; return s; }\n"+	// test 497
   "mixed b() { return sprintf(\"%'+-*'100000s\",\"\"); }",
 
 // - file->seek
 // - file->tell
-  "=mixed a() { object o=clone((program)\"/precompiled/file\"); return o->open(\"conftest\",\"r\") && o->read(4711) && o->tell() == 4711 && o->close(); }\n"+	// test 485
+  "=mixed a() { object o=clone((program)\"/precompiled/file\"); return o->open(\"conftest\",\"r\") && o->read(4711) && o->tell() == 4711 && o->close(); }\n"+	// test 498
   "mixed b() { return 1; }",
 
 // - file->stat
-  "=mixed a() { object o=clone((program)\"/precompiled/file\"); return equal(o->open(\"conftest\",\"r\") && o->stat(), file_stat(\"conftest\")); }\n"+	// test 486
+  "=mixed a() { object o=clone((program)\"/precompiled/file\"); return equal(o->open(\"conftest\",\"r\") && o->stat(), file_stat(\"conftest\")); }\n"+	// test 499
   "mixed b() { return 1; }",
 
 // - file->errno
-  "dmixed a() { clone((program)\"/precompiled/file\")->errno(); }\n",	// test 487
+  "dmixed a() { clone((program)\"/precompiled/file\")->errno(); }\n",	// test 500
 
 // - file->set_nonblocking
 // - file->set_blocking
 // - file->set_id
 // - file->query_id
-  "=mixed a() { object o=clone((program)\"/precompiled/file\"); return o->query_id()==o; }\n"+	// test 488
+  "=mixed a() { object o=clone((program)\"/precompiled/file\"); return o->query_id()==o; }\n"+	// test 501
   "mixed b() { return 1; }",
 
 // - file->query_read_callback
-  "dmixed a() { clone((program)\"/precompiled/file\")->query_read_callback(); }\n",	// test 489
+  "dmixed a() { clone((program)\"/precompiled/file\")->query_read_callback(); }\n",	// test 502
 
 // - file->query_write_callback
-  "dmixed a() { clone((program)\"/precompiled/file\")->query_write_callback(); }\n",	// test 490
+  "dmixed a() { clone((program)\"/precompiled/file\")->query_write_callback(); }\n",	// test 503
 
 // - file->query_close_callback
-  "dmixed a() { clone((program)\"/precompiled/file\")->query_close_callback(); }\n",	// test 491
+  "dmixed a() { clone((program)\"/precompiled/file\")->query_close_callback(); }\n",	// test 504
 
 // - file->dup
 // - file->assign
@@ -1156,8 +1179,8 @@ int main(int argc, string *argv)
 // - socket->errno
 // - socket->accept
 
-  "tmixed a() { return rm(\"conftest\"); }",	// test 492
-  "=mixed a() { return file_stat(\"conftest\"); }\n"+	// test 493
+  "tmixed a() { return rm(\"conftest\"); }",	// test 505
+  "=mixed a() { return file_stat(\"conftest\"); }\n"+	// test 506
   "mixed b() { return 0; }",
 
 // - file_stat
@@ -1167,456 +1190,455 @@ int main(int argc, string *argv)
 // - get_dir
 // - cd
 // - getcwd
-  "tmixed a() { return stringp(getcwd()); }",	// test 494
-  "=mixed a() { return '/'; }\n"+	// test 495
+  "tmixed a() { return stringp(getcwd()); }",	// test 507
+  "=mixed a() { return '/'; }\n"+	// test 508
   "mixed b() { return getcwd()[0]; }",
 
 // - sprintf module
-  "tmixed a() { return stringp(sprintf(\"\")); }",	// test 496
-  "=mixed a() { return sprintf(\"%d\",1); }\n"+	// test 497
+  "tmixed a() { return stringp(sprintf(\"\")); }",	// test 509
+  "=mixed a() { return sprintf(\"%d\",1); }\n"+	// test 510
   "mixed b() { return \"1\"; }",
-  "=mixed a() { return sprintf(\"%%\"); }\n"+	// test 498
+  "=mixed a() { return sprintf(\"%%\"); }\n"+	// test 511
   "mixed b() { return \"%\"; }",
-  "=mixed a() { return sprintf(\"%d\",1); }\n"+	// test 499
+  "=mixed a() { return sprintf(\"%d\",1); }\n"+	// test 512
   "mixed b() { return \"1\"; }",
-  "=mixed a() { return sprintf(\"%d\",-1); }\n"+	// test 500
+  "=mixed a() { return sprintf(\"%d\",-1); }\n"+	// test 513
   "mixed b() { return \"-1\"; }",
-  "=mixed a() { return sprintf(\"%u\",1<<31); }\n"+	// test 501
+  "=mixed a() { return sprintf(\"%u\",1<<31); }\n"+	// test 514
   "mixed b() { return \"2147483648\"; }",
-  "=mixed a() { return sprintf(\"%o\",255); }\n"+	// test 502
+  "=mixed a() { return sprintf(\"%o\",255); }\n"+	// test 515
   "mixed b() { return \"377\"; }",
-  "=mixed a() { return sprintf(\"%x\",255); }\n"+	// test 503
+  "=mixed a() { return sprintf(\"%x\",255); }\n"+	// test 516
   "mixed b() { return \"ff\"; }",
-  "=mixed a() { return sprintf(\"%X\",255); }\n"+	// test 504
+  "=mixed a() { return sprintf(\"%X\",255); }\n"+	// test 517
   "mixed b() { return \"FF\"; }",
-  "=mixed a() { return sprintf(\"%c\",255); }\n"+	// test 505
+  "=mixed a() { return sprintf(\"%c\",255); }\n"+	// test 518
   "mixed b() { return \"\\377\"; }",
-  "tmixed a() { return stringp(sprintf(\"%f\",255.0)); }",	// test 506
-  "tmixed a() { return stringp(sprintf(\"%g\",255.0)); }",	// test 507
-  "tmixed a() { return stringp(sprintf(\"%e\",255.0)); }",	// test 508
-  "tmixed a() { return stringp(sprintf(\"%e\",255.0)); }",	// test 509
-  "=mixed a() { return sprintf(\"%s\",\"foobaR\"); }\n"+	// test 510
+  "tmixed a() { return stringp(sprintf(\"%f\",255.0)); }",	// test 519
+  "tmixed a() { return stringp(sprintf(\"%g\",255.0)); }",	// test 520
+  "tmixed a() { return stringp(sprintf(\"%e\",255.0)); }",	// test 521
+  "tmixed a() { return stringp(sprintf(\"%e\",255.0)); }",	// test 522
+  "=mixed a() { return sprintf(\"%s\",\"foobaR\"); }\n"+	// test 523
   "mixed b() { return \"foobaR\"; }",
-  "=mixed a() { return sprintf(\"%s\",\"foo\\nbar\"); }\n"+	// test 511
+  "=mixed a() { return sprintf(\"%s\",\"foo\\nbar\"); }\n"+	// test 524
   "mixed b() { return \"foo\\nbar\"; }",
-  "tmixed a() { return stringp(sprintf(\"%O\",this_object())); }",	// test 512
-  "tmixed a() { return stringp(sprintf(\"%O\",({}))); }",	// test 513
-  "=mixed a() { return sprintf(\"%n\"); }\n"+	// test 514
+  "tmixed a() { return stringp(sprintf(\"%O\",this_object())); }",	// test 525
+  "tmixed a() { return stringp(sprintf(\"%O\",({}))); }",	// test 526
+  "=mixed a() { return sprintf(\"%n\"); }\n"+	// test 527
   "mixed b() { return \"\"; }",
-  "=mixed a() { return sprintf(\"%t\",1); }\n"+	// test 515
+  "=mixed a() { return sprintf(\"%t\",1); }\n"+	// test 528
   "mixed b() { return \"int\"; }",
-  "=mixed a() { return sprintf(\"%t\",this_object()); }\n"+	// test 516
+  "=mixed a() { return sprintf(\"%t\",this_object()); }\n"+	// test 529
   "mixed b() { return \"object\"; }",
-  "=mixed a() { return sprintf(\"%{%d\\n%}\",({1,2,3,4})); }\n"+	// test 517
+  "=mixed a() { return sprintf(\"%{%d\\n%}\",({1,2,3,4})); }\n"+	// test 530
   "mixed b() { return \"1\\n2\\n3\\n4\\n\"; }",
 
-  "=mixed a() { return strlen(sprintf(\"%1000s\",\"\")); }\n"+	// test 518
+  "=mixed a() { return strlen(sprintf(\"%1000s\",\"\")); }\n"+	// test 531
   "mixed b() { return 1000; }",
-  "=mixed a() { return sprintf(\"%2d\",1); }\n"+	// test 519
+  "=mixed a() { return sprintf(\"%2d\",1); }\n"+	// test 532
   "mixed b() { return \" 1\"; }",
-  "=mixed a() { return sprintf(\"%2d\",1); }\n"+	// test 520
+  "=mixed a() { return sprintf(\"%2d\",1); }\n"+	// test 533
   "mixed b() { return \" 1\"; }",
-  "=mixed a() { return sprintf(\"%2d\",2222); }\n"+	// test 521
+  "=mixed a() { return sprintf(\"%2d\",2222); }\n"+	// test 534
   "mixed b() { return \"2222\"; }",
-  "=mixed a() { return sprintf(\"%!2d\",2222); }\n"+	// test 522
+  "=mixed a() { return sprintf(\"%!2d\",2222); }\n"+	// test 535
   "mixed b() { return \"22\"; }",
-  "=mixed a() { return sprintf(\"%!!2d\",2222); }\n"+	// test 523
+  "=mixed a() { return sprintf(\"%!!2d\",2222); }\n"+	// test 536
   "mixed b() { return \"2222\"; }",
-  "=mixed a() { return sprintf(\"% d\",2); }\n"+	// test 524
+  "=mixed a() { return sprintf(\"% d\",2); }\n"+	// test 537
   "mixed b() { return \" 2\"; }",
-  "=mixed a() { return sprintf(\"% d\",-2); }\n"+	// test 525
+  "=mixed a() { return sprintf(\"% d\",-2); }\n"+	// test 538
   "mixed b() { return \"-2\"; }",
-  "=mixed a() { return sprintf(\"%+d\",2); }\n"+	// test 526
+  "=mixed a() { return sprintf(\"%+d\",2); }\n"+	// test 539
   "mixed b() { return \"+2\"; }",
-  "=mixed a() { return sprintf(\"%+d\",-2); }\n"+	// test 527
+  "=mixed a() { return sprintf(\"%+d\",-2); }\n"+	// test 540
   "mixed b() { return \"-2\"; }",
-  "=mixed a() { return sprintf(\"%-2d\",2); }\n"+	// test 528
+  "=mixed a() { return sprintf(\"%-2d\",2); }\n"+	// test 541
   "mixed b() { return \"2 \"; }",
-  "=mixed a() { return sprintf(\"%|3d\",2); }\n"+	// test 529
+  "=mixed a() { return sprintf(\"%|3d\",2); }\n"+	// test 542
   "mixed b() { return \" 2 \"; }",
-  "=mixed a() { return sprintf(\"%-=3s\",\"f o bar gaz\"); }\n"+	// test 530
+  "=mixed a() { return sprintf(\"%-=3s\",\"f o bar gaz\"); }\n"+	// test 543
   "mixed b() { return \"f o\\nbar\\ngaz\"; }",
-  "=mixed a() { return sprintf(\"%*d\",3,3); }\n"+	// test 531
+  "=mixed a() { return sprintf(\"%*d\",3,3); }\n"+	// test 544
   "mixed b() { return \"  3\"; }",
-  "=mixed a() { return sprintf(\"%'FOO'10s\",\"BAR\"); }\n"+	// test 532
+  "=mixed a() { return sprintf(\"%'FOO'10s\",\"BAR\"); }\n"+	// test 545
   "mixed b() { return \"FOOFOOFBAR\"; }",
-  "=mixed a() { return sprintf(\"%d %<d %<d\",2); }\n"+	// test 533
+  "=mixed a() { return sprintf(\"%d %<d %<d\",2); }\n"+	// test 546
   "mixed b() { return \"2 2 2\"; }",
-  "Emixed a() { sprintf(\"%d\"); }\n",	// test 534
+  "Emixed a() { sprintf(\"%d\"); }\n",	// test 547
 
 // - Here we try the regexp module
-  "tmixed a() { return programp((program)\"/precompiled/regexp\"); }",	// test 535
-  "=mixed a() { object o; o=clone((program)\"/precompiled/regexp\"); destruct(o); return 1; }\n"+	// test 536
+  "tmixed a() { return programp((program)\"/precompiled/regexp\"); }",	// test 548
+  "=mixed a() { object o; o=clone((program)\"/precompiled/regexp\"); destruct(o); return 1; }\n"+	// test 549
   "mixed b() { return 1; }",
 
 // regexp->create
-  "=mixed a() { object o; o=clone((program)\"/precompiled/regexp\",\"^.*$\"); destruct(o); return 1; }\n"+	// test 537
+  "=mixed a() { object o; o=clone((program)\"/precompiled/regexp\",\"^.*$\"); destruct(o); return 1; }\n"+	// test 550
   "mixed b() { return 1; }",
 
 // regexp->match
-  "=mixed a() { return clone((program)\"/precompiled/regexp\",\"^.*$\")->match(\"\"); }\n"+	// test 538
+  "=mixed a() { return clone((program)\"/precompiled/regexp\",\"^.*$\")->match(\"\"); }\n"+	// test 551
   "mixed b() { return 1; }",
-  "=mixed a() { return clone((program)\"/precompiled/regexp\",\"^.*$\")->match(\"a\"); }\n"+	// test 539
+  "=mixed a() { return clone((program)\"/precompiled/regexp\",\"^.*$\")->match(\"a\"); }\n"+	// test 552
   "mixed b() { return 1; }",
-  "=mixed a() { return clone((program)\"/precompiled/regexp\",\"^.*$\")->match(\"-\"); }\n"+	// test 540
+  "=mixed a() { return clone((program)\"/precompiled/regexp\",\"^.*$\")->match(\"-\"); }\n"+	// test 553
   "mixed b() { return 1; }",
-  "=mixed a() { return clone((program)\"/precompiled/regexp\",\"^$\")->match(\"\"); }\n"+	// test 541
+  "=mixed a() { return clone((program)\"/precompiled/regexp\",\"^$\")->match(\"\"); }\n"+	// test 554
   "mixed b() { return 1; }",
-  "=mixed a() { return clone((program)\"/precompiled/regexp\",\"^.$\")->match(\"a\"); }\n"+	// test 542
+  "=mixed a() { return clone((program)\"/precompiled/regexp\",\"^.$\")->match(\"a\"); }\n"+	// test 555
   "mixed b() { return 1; }",
-  "=mixed a() { return clone((program)\"/precompiled/regexp\",\"^.$\")->match(\"-\"); }\n"+	// test 543
+  "=mixed a() { return clone((program)\"/precompiled/regexp\",\"^.$\")->match(\"-\"); }\n"+	// test 556
   "mixed b() { return 1; }",
-  "=mixed a() { return clone((program)\"/precompiled/regexp\",\"^[abc]$\")->match(\"-\"); }\n"+	// test 544
+  "=mixed a() { return clone((program)\"/precompiled/regexp\",\"^[abc]$\")->match(\"-\"); }\n"+	// test 557
   "mixed b() { return 0; }",
-  "=mixed a() { return clone((program)\"/precompiled/regexp\",\"^[abc]$\")->match(\"a\"); }\n"+	// test 545
+  "=mixed a() { return clone((program)\"/precompiled/regexp\",\"^[abc]$\")->match(\"a\"); }\n"+	// test 558
   "mixed b() { return 1; }",
-  "=mixed a() { return clone((program)\"/precompiled/regexp\",\"^[abc]$\")->match(\"c\"); }\n"+	// test 546
+  "=mixed a() { return clone((program)\"/precompiled/regexp\",\"^[abc]$\")->match(\"c\"); }\n"+	// test 559
   "mixed b() { return 1; }",
-  "=mixed a() { return clone((program)\"/precompiled/regexp\",\"^[^abc]$\")->match(\"-\"); }\n"+	// test 547
+  "=mixed a() { return clone((program)\"/precompiled/regexp\",\"^[^abc]$\")->match(\"-\"); }\n"+	// test 560
   "mixed b() { return 1; }",
-  "=mixed a() { return clone((program)\"/precompiled/regexp\",\"^[^abc]$\")->match(\"a\"); }\n"+	// test 548
+  "=mixed a() { return clone((program)\"/precompiled/regexp\",\"^[^abc]$\")->match(\"a\"); }\n"+	// test 561
   "mixed b() { return 0; }",
-  "=mixed a() { return clone((program)\"/precompiled/regexp\",\"^[^abc]$\")->match(\"c\"); }\n"+	// test 549
+  "=mixed a() { return clone((program)\"/precompiled/regexp\",\"^[^abc]$\")->match(\"c\"); }\n"+	// test 562
   "mixed b() { return 0; }",
-  "=mixed a() { return clone((program)\"/precompiled/regexp\",\"^a*$\")->match(\"aaaa\"); }\n"+	// test 550
+  "=mixed a() { return clone((program)\"/precompiled/regexp\",\"^a*$\")->match(\"aaaa\"); }\n"+	// test 563
   "mixed b() { return 1; }",
-  "=mixed a() { return clone((program)\"/precompiled/regexp\",\"^a|b$\")->match(\"a\"); }\n"+	// test 551
+  "=mixed a() { return clone((program)\"/precompiled/regexp\",\"^a|b$\")->match(\"a\"); }\n"+	// test 564
   "mixed b() { return 1; }",
-  "=mixed a() { return clone((program)\"/precompiled/regexp\",\"^a|b$\")->match(\"b\"); }\n"+	// test 552
+  "=mixed a() { return clone((program)\"/precompiled/regexp\",\"^a|b$\")->match(\"b\"); }\n"+	// test 565
   "mixed b() { return 1; }",
 
 // regexp->split
-  "emixed a() { return clone((program)\"/precompiled/regexp\",\"^(a*)[^a]*$\")->split(\"aaabbb\"); }\n"+	// test 553
+  "emixed a() { return clone((program)\"/precompiled/regexp\",\"^(a*)[^a]*$\")->split(\"aaabbb\"); }\n"+	// test 566
   "mixed b() { return ({\"aaa\"}); }",
 
 
 // - Here we try the math module
 
 // - tan
-  "tmixed a() { return floatp(tan(0.5)); }",	// test 554
-  "=mixed a() { return 0.5; }\n"+	// test 555
+  "tmixed a() { return floatp(tan(0.5)); }",	// test 567
+  "=mixed a() { return 0.5; }\n"+	// test 568
   "mixed b() { return tan(atan(0.5)); }",
-  "=mixed a() { return 0.5; }\n"+	// test 556
+  "=mixed a() { return 0.5; }\n"+	// test 569
   "mixed b() { return atan(tan(0.5)); }",
 // - asin
-  "tmixed a() { return floatp(asin(0.7)); }",	// test 557
-  "=mixed a() { return asin(0.0); }\n"+	// test 558
+  "tmixed a() { return floatp(asin(0.7)); }",	// test 570
+  "=mixed a() { return asin(0.0); }\n"+	// test 571
   "mixed b() { return 0.0; }",
 // - atan
-  "tmixed a() { return floatp(atan(0.7)); }",	// test 559
-  "=mixed a() { return 3.1415 > 4.0*atan(1.0); }\n"+	// test 560
-  "mixed b() { return ; }",
-  "=mixed a() { return 3.1416 < 4.0*atan(1.0); }\n"+	// test 561
-  "mixed b() { return ; }",
+  "tmixed a() { return floatp(atan(0.7)); }",	// test 572
+  "tmixed a() { return 3.1415 < 4.0*atan(1.0); }",	// test 573
+  "tmixed a() { return 3.1416 > 4.0*atan(1.0); }",	// test 574
 // - sin
-  "tmixed a() { return floatp(sin(1.2)); }",	// test 562
-  "tmixed a() { return sin(atan(1.0))>0.707; }",	// test 563
-  "tmixed a() { return sin(atan(1.0))<0.708; }",	// test 564
+  "tmixed a() { return floatp(sin(1.2)); }",	// test 575
+  "tmixed a() { return sin(atan(1.0))>0.707; }",	// test 576
+  "tmixed a() { return sin(atan(1.0))<0.708; }",	// test 577
 // - acos
-  "tmixed a() { return acos(0.7) > 0.795; }",	// test 565
-  "tmixed a() { return acos(0.7) < 0.796; }",	// test 566
+  "tmixed a() { return acos(0.7) > 0.795; }",	// test 578
+  "tmixed a() { return acos(0.7) < 0.796; }",	// test 579
 // - cos
-  "tmixed a() { return floatp(cos(1.2)); }",	// test 567
-  "tmixed a() { return cos(atan(1.0))>0.707; }",	// test 568
-  "tmixed a() { return cos(atan(1.0))<0.708; }",	// test 569
+  "tmixed a() { return floatp(cos(1.2)); }",	// test 580
+  "tmixed a() { return cos(atan(1.0))>0.707; }",	// test 581
+  "tmixed a() { return cos(atan(1.0))<0.708; }",	// test 582
 // - sqrt
-  "=mixed a() { return 4; }\n"+	// test 570
+  "=mixed a() { return 4; }\n"+	// test 583
   "mixed b() { return sqrt(16); }",
-  "=mixed a() { return 4; }\n"+	// test 571
+  "=mixed a() { return 4; }\n"+	// test 584
   "mixed b() { return sqrt(17); }",
-  "=mixed a() { return 4; }\n"+	// test 572
+  "=mixed a() { return 4; }\n"+	// test 585
   "mixed b() { return sqrt(24); }",
-  "=mixed a() { return 4.0; }\n"+	// test 573
+  "=mixed a() { return 4.0; }\n"+	// test 586
   "mixed b() { return sqrt(16.0); }",
 // - floor
-  "=mixed a() { return 17.0; }\n"+	// test 574
+  "=mixed a() { return 17.0; }\n"+	// test 587
   "mixed b() { return floor(17.0); }",
-  "=mixed a() { return 17.0; }\n"+	// test 575
+  "=mixed a() { return 17.0; }\n"+	// test 588
   "mixed b() { return floor(17.1); }",
-  "=mixed a() { return 17.0; }\n"+	// test 576
+  "=mixed a() { return 17.0; }\n"+	// test 589
   "mixed b() { return floor(17.7); }",
 // - ceil
-  "=mixed a() { return 17.0; }\n"+	// test 577
+  "=mixed a() { return 17.0; }\n"+	// test 590
   "mixed b() { return ceil(17.0); }",
-  "=mixed a() { return 18.0; }\n"+	// test 578
+  "=mixed a() { return 18.0; }\n"+	// test 591
   "mixed b() { return ceil(17.1); }",
-  "=mixed a() { return 18.0; }\n"+	// test 579
+  "=mixed a() { return 18.0; }\n"+	// test 592
   "mixed b() { return ceil(17.7); }",
 // - exp
 // - log
-  "tmixed a() { return 2.70001>exp(log(2.7)); }",	// test 580
-  "tmixed a() { return 2.69999<exp(log(2.7)); }",	// test 581
-  "tmixed a() { return 2.70001>log(exp(2.7)); }",	// test 582
-  "tmixed a() { return 2.69999<log(exp(2.7)); }",	// test 583
+  "tmixed a() { return 2.70001>exp(log(2.7)); }",	// test 593
+  "tmixed a() { return 2.69999<exp(log(2.7)); }",	// test 594
+  "tmixed a() { return 2.70001>log(exp(2.7)); }",	// test 595
+  "tmixed a() { return 2.69999<log(exp(2.7)); }",	// test 596
 // - pow
-  "=mixed a() { return pow(10.0,10.0); }\n"+	// test 584
+  "=mixed a() { return pow(10.0,10.0); }\n"+	// test 597
   "mixed b() { return 10000000000.0; }",
 
 // foop
 
 
 
-  "=mixed a() { return intp (17); }\n"+	// test 585
+  "=mixed a() { return intp (17); }\n"+	// test 598
   "mixed b() { return !(0); }",
-  "=mixed a() { return intp (1.7); }\n"+	// test 586
+  "=mixed a() { return intp (1.7); }\n"+	// test 599
   "mixed b() { return !(0-1); }",
-  "=mixed a() { return intp (\"17\"); }\n"+	// test 587
+  "=mixed a() { return intp (\"17\"); }\n"+	// test 600
   "mixed b() { return !(0-2); }",
-  "=mixed a() { return intp (this_object()); }\n"+	// test 588
+  "=mixed a() { return intp (this_object()); }\n"+	// test 601
   "mixed b() { return !(0-3); }",
-  "=mixed a() { return intp (a); }\n"+	// test 589
+  "=mixed a() { return intp (a); }\n"+	// test 602
   "mixed b() { return !(0-4); }", // a is the test function
-  "=mixed a() { return intp (({})); }\n"+	// test 590
+  "=mixed a() { return intp (({})); }\n"+	// test 603
   "mixed b() { return !(0-5); }",
-  "=mixed a() { return intp (([])); }\n"+	// test 591
+  "=mixed a() { return intp (([])); }\n"+	// test 604
   "mixed b() { return !(0-6); }",
-  "=mixed a() { return intp ((<>)); }\n"+	// test 592
+  "=mixed a() { return intp ((<>)); }\n"+	// test 605
   "mixed b() { return !(0-7); }",
-  "=mixed a() { return intp (object_program(this_object())); }\n"+	// test 593
+  "=mixed a() { return intp (object_program(this_object())); }\n"+	// test 606
   "mixed b() { return !(0-8); }",
 
 
-  "=mixed a() { return floatp (17); }\n"+	// test 594
+  "=mixed a() { return floatp (17); }\n"+	// test 607
   "mixed b() { return !(1); }",
-  "=mixed a() { return floatp (1.7); }\n"+	// test 595
+  "=mixed a() { return floatp (1.7); }\n"+	// test 608
   "mixed b() { return !(1-1); }",
-  "=mixed a() { return floatp (\"17\"); }\n"+	// test 596
+  "=mixed a() { return floatp (\"17\"); }\n"+	// test 609
   "mixed b() { return !(1-2); }",
-  "=mixed a() { return floatp (this_object()); }\n"+	// test 597
+  "=mixed a() { return floatp (this_object()); }\n"+	// test 610
   "mixed b() { return !(1-3); }",
-  "=mixed a() { return floatp (a); }\n"+	// test 598
+  "=mixed a() { return floatp (a); }\n"+	// test 611
   "mixed b() { return !(1-4); }", // a is the test function
-  "=mixed a() { return floatp (({})); }\n"+	// test 599
+  "=mixed a() { return floatp (({})); }\n"+	// test 612
   "mixed b() { return !(1-5); }",
-  "=mixed a() { return floatp (([])); }\n"+	// test 600
+  "=mixed a() { return floatp (([])); }\n"+	// test 613
   "mixed b() { return !(1-6); }",
-  "=mixed a() { return floatp ((<>)); }\n"+	// test 601
+  "=mixed a() { return floatp ((<>)); }\n"+	// test 614
   "mixed b() { return !(1-7); }",
-  "=mixed a() { return floatp (object_program(this_object())); }\n"+	// test 602
+  "=mixed a() { return floatp (object_program(this_object())); }\n"+	// test 615
   "mixed b() { return !(1-8); }",
 
 
-  "=mixed a() { return stringp (17); }\n"+	// test 603
+  "=mixed a() { return stringp (17); }\n"+	// test 616
   "mixed b() { return !(2); }",
-  "=mixed a() { return stringp (1.7); }\n"+	// test 604
+  "=mixed a() { return stringp (1.7); }\n"+	// test 617
   "mixed b() { return !(2-1); }",
-  "=mixed a() { return stringp (\"17\"); }\n"+	// test 605
+  "=mixed a() { return stringp (\"17\"); }\n"+	// test 618
   "mixed b() { return !(2-2); }",
-  "=mixed a() { return stringp (this_object()); }\n"+	// test 606
+  "=mixed a() { return stringp (this_object()); }\n"+	// test 619
   "mixed b() { return !(2-3); }",
-  "=mixed a() { return stringp (a); }\n"+	// test 607
+  "=mixed a() { return stringp (a); }\n"+	// test 620
   "mixed b() { return !(2-4); }", // a is the test function
-  "=mixed a() { return stringp (({})); }\n"+	// test 608
+  "=mixed a() { return stringp (({})); }\n"+	// test 621
   "mixed b() { return !(2-5); }",
-  "=mixed a() { return stringp (([])); }\n"+	// test 609
+  "=mixed a() { return stringp (([])); }\n"+	// test 622
   "mixed b() { return !(2-6); }",
-  "=mixed a() { return stringp ((<>)); }\n"+	// test 610
+  "=mixed a() { return stringp ((<>)); }\n"+	// test 623
   "mixed b() { return !(2-7); }",
-  "=mixed a() { return stringp (object_program(this_object())); }\n"+	// test 611
+  "=mixed a() { return stringp (object_program(this_object())); }\n"+	// test 624
   "mixed b() { return !(2-8); }",
 
 
-  "=mixed a() { return objectp (17); }\n"+	// test 612
+  "=mixed a() { return objectp (17); }\n"+	// test 625
   "mixed b() { return !(3); }",
-  "=mixed a() { return objectp (1.7); }\n"+	// test 613
+  "=mixed a() { return objectp (1.7); }\n"+	// test 626
   "mixed b() { return !(3-1); }",
-  "=mixed a() { return objectp (\"17\"); }\n"+	// test 614
+  "=mixed a() { return objectp (\"17\"); }\n"+	// test 627
   "mixed b() { return !(3-2); }",
-  "=mixed a() { return objectp (this_object()); }\n"+	// test 615
+  "=mixed a() { return objectp (this_object()); }\n"+	// test 628
   "mixed b() { return !(3-3); }",
-  "=mixed a() { return objectp (a); }\n"+	// test 616
+  "=mixed a() { return objectp (a); }\n"+	// test 629
   "mixed b() { return !(3-4); }", // a is the test function
-  "=mixed a() { return objectp (({})); }\n"+	// test 617
+  "=mixed a() { return objectp (({})); }\n"+	// test 630
   "mixed b() { return !(3-5); }",
-  "=mixed a() { return objectp (([])); }\n"+	// test 618
+  "=mixed a() { return objectp (([])); }\n"+	// test 631
   "mixed b() { return !(3-6); }",
-  "=mixed a() { return objectp ((<>)); }\n"+	// test 619
+  "=mixed a() { return objectp ((<>)); }\n"+	// test 632
   "mixed b() { return !(3-7); }",
-  "=mixed a() { return objectp (object_program(this_object())); }\n"+	// test 620
+  "=mixed a() { return objectp (object_program(this_object())); }\n"+	// test 633
   "mixed b() { return !(3-8); }",
 
 
-  "=mixed a() { return functionp (17); }\n"+	// test 621
+  "=mixed a() { return functionp (17); }\n"+	// test 634
   "mixed b() { return !(4); }",
-  "=mixed a() { return functionp (1.7); }\n"+	// test 622
+  "=mixed a() { return functionp (1.7); }\n"+	// test 635
   "mixed b() { return !(4-1); }",
-  "=mixed a() { return functionp (\"17\"); }\n"+	// test 623
+  "=mixed a() { return functionp (\"17\"); }\n"+	// test 636
   "mixed b() { return !(4-2); }",
-  "=mixed a() { return functionp (this_object()); }\n"+	// test 624
+  "=mixed a() { return functionp (this_object()); }\n"+	// test 637
   "mixed b() { return !(4-3); }",
-  "=mixed a() { return functionp (a); }\n"+	// test 625
+  "=mixed a() { return functionp (a); }\n"+	// test 638
   "mixed b() { return !(4-4); }", // a is the test function
-  "=mixed a() { return functionp (({})); }\n"+	// test 626
+  "=mixed a() { return functionp (({})); }\n"+	// test 639
   "mixed b() { return !(4-5); }",
-  "=mixed a() { return functionp (([])); }\n"+	// test 627
+  "=mixed a() { return functionp (([])); }\n"+	// test 640
   "mixed b() { return !(4-6); }",
-  "=mixed a() { return functionp ((<>)); }\n"+	// test 628
+  "=mixed a() { return functionp ((<>)); }\n"+	// test 641
   "mixed b() { return !(4-7); }",
-  "=mixed a() { return functionp (object_program(this_object())); }\n"+	// test 629
+  "=mixed a() { return functionp (object_program(this_object())); }\n"+	// test 642
   "mixed b() { return !(4-8); }",
 
 
-  "=mixed a() { return arrayp (17); }\n"+	// test 630
+  "=mixed a() { return arrayp (17); }\n"+	// test 643
   "mixed b() { return !(5); }",
-  "=mixed a() { return arrayp (1.7); }\n"+	// test 631
+  "=mixed a() { return arrayp (1.7); }\n"+	// test 644
   "mixed b() { return !(5-1); }",
-  "=mixed a() { return arrayp (\"17\"); }\n"+	// test 632
+  "=mixed a() { return arrayp (\"17\"); }\n"+	// test 645
   "mixed b() { return !(5-2); }",
-  "=mixed a() { return arrayp (this_object()); }\n"+	// test 633
+  "=mixed a() { return arrayp (this_object()); }\n"+	// test 646
   "mixed b() { return !(5-3); }",
-  "=mixed a() { return arrayp (a); }\n"+	// test 634
+  "=mixed a() { return arrayp (a); }\n"+	// test 647
   "mixed b() { return !(5-4); }", // a is the test function
-  "=mixed a() { return arrayp (({})); }\n"+	// test 635
+  "=mixed a() { return arrayp (({})); }\n"+	// test 648
   "mixed b() { return !(5-5); }",
-  "=mixed a() { return arrayp (([])); }\n"+	// test 636
+  "=mixed a() { return arrayp (([])); }\n"+	// test 649
   "mixed b() { return !(5-6); }",
-  "=mixed a() { return arrayp ((<>)); }\n"+	// test 637
+  "=mixed a() { return arrayp ((<>)); }\n"+	// test 650
   "mixed b() { return !(5-7); }",
-  "=mixed a() { return arrayp (object_program(this_object())); }\n"+	// test 638
+  "=mixed a() { return arrayp (object_program(this_object())); }\n"+	// test 651
   "mixed b() { return !(5-8); }",
 
 
-  "=mixed a() { return mappingp (17); }\n"+	// test 639
+  "=mixed a() { return mappingp (17); }\n"+	// test 652
   "mixed b() { return !(6); }",
-  "=mixed a() { return mappingp (1.7); }\n"+	// test 640
+  "=mixed a() { return mappingp (1.7); }\n"+	// test 653
   "mixed b() { return !(6-1); }",
-  "=mixed a() { return mappingp (\"17\"); }\n"+	// test 641
+  "=mixed a() { return mappingp (\"17\"); }\n"+	// test 654
   "mixed b() { return !(6-2); }",
-  "=mixed a() { return mappingp (this_object()); }\n"+	// test 642
+  "=mixed a() { return mappingp (this_object()); }\n"+	// test 655
   "mixed b() { return !(6-3); }",
-  "=mixed a() { return mappingp (a); }\n"+	// test 643
+  "=mixed a() { return mappingp (a); }\n"+	// test 656
   "mixed b() { return !(6-4); }", // a is the test function
-  "=mixed a() { return mappingp (({})); }\n"+	// test 644
+  "=mixed a() { return mappingp (({})); }\n"+	// test 657
   "mixed b() { return !(6-5); }",
-  "=mixed a() { return mappingp (([])); }\n"+	// test 645
+  "=mixed a() { return mappingp (([])); }\n"+	// test 658
   "mixed b() { return !(6-6); }",
-  "=mixed a() { return mappingp ((<>)); }\n"+	// test 646
+  "=mixed a() { return mappingp ((<>)); }\n"+	// test 659
   "mixed b() { return !(6-7); }",
-  "=mixed a() { return mappingp (object_program(this_object())); }\n"+	// test 647
+  "=mixed a() { return mappingp (object_program(this_object())); }\n"+	// test 660
   "mixed b() { return !(6-8); }",
 
 
-  "=mixed a() { return listp (17); }\n"+	// test 648
+  "=mixed a() { return listp (17); }\n"+	// test 661
   "mixed b() { return !(7); }",
-  "=mixed a() { return listp (1.7); }\n"+	// test 649
+  "=mixed a() { return listp (1.7); }\n"+	// test 662
   "mixed b() { return !(7-1); }",
-  "=mixed a() { return listp (\"17\"); }\n"+	// test 650
+  "=mixed a() { return listp (\"17\"); }\n"+	// test 663
   "mixed b() { return !(7-2); }",
-  "=mixed a() { return listp (this_object()); }\n"+	// test 651
+  "=mixed a() { return listp (this_object()); }\n"+	// test 664
   "mixed b() { return !(7-3); }",
-  "=mixed a() { return listp (a); }\n"+	// test 652
+  "=mixed a() { return listp (a); }\n"+	// test 665
   "mixed b() { return !(7-4); }", // a is the test function
-  "=mixed a() { return listp (({})); }\n"+	// test 653
+  "=mixed a() { return listp (({})); }\n"+	// test 666
   "mixed b() { return !(7-5); }",
-  "=mixed a() { return listp (([])); }\n"+	// test 654
+  "=mixed a() { return listp (([])); }\n"+	// test 667
   "mixed b() { return !(7-6); }",
-  "=mixed a() { return listp ((<>)); }\n"+	// test 655
+  "=mixed a() { return listp ((<>)); }\n"+	// test 668
   "mixed b() { return !(7-7); }",
-  "=mixed a() { return listp (object_program(this_object())); }\n"+	// test 656
+  "=mixed a() { return listp (object_program(this_object())); }\n"+	// test 669
   "mixed b() { return !(7-8); }",
 
 
-  "=mixed a() { return programp (17); }\n"+	// test 657
+  "=mixed a() { return programp (17); }\n"+	// test 670
   "mixed b() { return !(8); }",
-  "=mixed a() { return programp (1.7); }\n"+	// test 658
+  "=mixed a() { return programp (1.7); }\n"+	// test 671
   "mixed b() { return !(8-1); }",
-  "=mixed a() { return programp (\"17\"); }\n"+	// test 659
+  "=mixed a() { return programp (\"17\"); }\n"+	// test 672
   "mixed b() { return !(8-2); }",
-  "=mixed a() { return programp (this_object()); }\n"+	// test 660
+  "=mixed a() { return programp (this_object()); }\n"+	// test 673
   "mixed b() { return !(8-3); }",
-  "=mixed a() { return programp (a); }\n"+	// test 661
+  "=mixed a() { return programp (a); }\n"+	// test 674
   "mixed b() { return !(8-4); }", // a is the test function
-  "=mixed a() { return programp (({})); }\n"+	// test 662
+  "=mixed a() { return programp (({})); }\n"+	// test 675
   "mixed b() { return !(8-5); }",
-  "=mixed a() { return programp (([])); }\n"+	// test 663
+  "=mixed a() { return programp (([])); }\n"+	// test 676
   "mixed b() { return !(8-6); }",
-  "=mixed a() { return programp ((<>)); }\n"+	// test 664
+  "=mixed a() { return programp ((<>)); }\n"+	// test 677
   "mixed b() { return !(8-7); }",
-  "=mixed a() { return programp (object_program(this_object())); }\n"+	// test 665
+  "=mixed a() { return programp (object_program(this_object())); }\n"+	// test 678
   "mixed b() { return !(8-8); }",
 
 
 // add_efun
-  "dmixed a() { add_efun(\"foobar\",lambda() { return 1; }); }\n",	// test 666
-  "=mixed a() { \n#if efun(foobar)\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 667
+  "dmixed a() { add_efun(\"foobar\",lambda() { return 1; }); }\n",	// test 679
+  "=mixed a() { \n#if efun(foobar)\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 680
   "mixed b() { return 1; }",
-  "=mixed a() { return foobar(); }\n"+	// test 668
+  "=mixed a() { return foobar(); }\n"+	// test 681
   "mixed b() { return 1; }",
-  "dmixed a() { add_efun(\"foobar\"); }\n",	// test 669
-  "=mixed a() { \n#if efun(foobar)\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 670
+  "dmixed a() { add_efun(\"foobar\"); }\n",	// test 682
+  "=mixed a() { \n#if efun(foobar)\nreturn 1;\n#else\nreturn 0;\n#endif\n; }\n"+	// test 683
   "mixed b() { return 0; }",
 
 // - aggregate
-  "tmixed a() { return arrayp(aggregate()); }",	// test 671
-  "=mixed a() { return sizeof(aggregate()); }\n"+	// test 672
+  "tmixed a() { return arrayp(aggregate()); }",	// test 684
+  "=mixed a() { return sizeof(aggregate()); }\n"+	// test 685
   "mixed b() { return 0; }",
-  "emixed a() { return aggregate(1,2,3,4); }\n"+	// test 673
+  "emixed a() { return aggregate(1,2,3,4); }\n"+	// test 686
   "mixed b() { return ({1,2,3,4}); }",
 
 // - aggregate_list
-  "tmixed a() { return listp(aggregate_list()); }",	// test 674
+  "tmixed a() { return listp(aggregate_list()); }",	// test 687
 
 // - aggregate_mapping
-  "tmixed a() { return listp(aggregate_list()); }",	// test 675
+  "tmixed a() { return listp(aggregate_list()); }",	// test 688
 
 // - all_efuns
-  "tmixed a() { return mappingp(all_efuns()); }",	// test 676
-  "tmixed a() { return all_efuns()[\"all_efuns\"]; }",	// test 677
-  "=mixed a() { return all_efuns()[\"all_efuns\"]; }\n"+	// test 678
+  "tmixed a() { return mappingp(all_efuns()); }",	// test 689
+  "tmixed a() { return all_efuns()[\"all_efuns\"]; }",	// test 690
+  "=mixed a() { return all_efuns()[\"all_efuns\"]; }\n"+	// test 691
   "mixed b() { return all_efuns; }",
 
 // - allocate
-  "tmixed a() { return arrayp(allocate(0)); }",	// test 679
-  "emixed a() { return allocate(2)==({0,0}); }\n"+	// test 680
-  "mixed b() { return ; }",
+  "tmixed a() { return arrayp(allocate(0)); }",	// test 692
+  "emixed a() { return allocate(2); }\n"+	// test 693
+  "mixed b() { return ({0,0}); }",
+  "fmixed a() { return allocate(2)==({0,0}); }",	// test 694
 
 // - backtrace
-  "tmixed a() { return arrayp(backtrace()); }",	// test 681
-  "=mixed a() { return backtrace()[-1][2]; }\n"+	// test 682
+  "tmixed a() { return arrayp(backtrace()); }",	// test 695
+  "=mixed a() { return backtrace()[-1][2]; }\n"+	// test 696
   "mixed b() { return a; }",
 
 // - call_function
-  "=mixed a() { return 1; }\n"+	// test 683
+  "=mixed a() { return 1; }\n"+	// test 697
   "mixed b() { return call_function(a); }",
-  "=mixed a() { return 1; }\n"+	// test 684
+  "=mixed a() { return 1; }\n"+	// test 698
   "mixed b() { return call_function(lambda(int a){ return a; },1); }",
-  "=mixed a() { return 1; }\n"+	// test 685
+  "=mixed a() { return 1; }\n"+	// test 699
   "mixed b() { return call_function(intp,1); }",
 
 // - capitalize
-  "=mixed a() { return capitalize(\"fubar\"); }\n"+	// test 686
+  "=mixed a() { return capitalize(\"fubar\"); }\n"+	// test 700
   "mixed b() { return \"Fubar\"; }",
-  "=mixed a() { return capitalize(\"FooBar\"); }\n"+	// test 687
+  "=mixed a() { return capitalize(\"FooBar\"); }\n"+	// test 701
   "mixed b() { return \"FooBar\"; }",
-  "=mixed a() { return capitalize(\"-\"); }\n"+	// test 688
+  "=mixed a() { return capitalize(\"-\"); }\n"+	// test 702
   "mixed b() { return \"-\"; }",
 
 // - clone
 // clone is already tested a lot by this script
-  "tmixed a() { return objectp(clone(compile_string(\"int foo() { return 17; }\"))); }",	// test 689
-  "=mixed a() { return clone(compile_string(\"int foo() { return 17; }\"))->foo(); }\n"+	// test 690
+  "tmixed a() { return objectp(clone(compile_string(\"int foo() { return 17; }\"))); }",	// test 703
+  "=mixed a() { return clone(compile_string(\"int foo() { return 17; }\"))->foo(); }\n"+	// test 704
   "mixed b() { return 17; }",
 
 // - combine_path
-  "=mixed a() { return combine_path(\"/foo/bar/gazonk/\",\"..\"); }\n"+	// test 691
+  "=mixed a() { return combine_path(\"/foo/bar/gazonk/\",\"..\"); }\n"+	// test 705
   "mixed b() { return \"/foo/bar\"; }",
-  "=mixed a() { return combine_path(\"/.../\",\"sune\"); }\n"+	// test 692
+  "=mixed a() { return combine_path(\"/.../\",\"sune\"); }\n"+	// test 706
   "mixed b() { return \"/.../sune\"; }",
-  "=mixed a() { return combine_path(\"/\",\"foo/.../sune\"); }\n"+	// test 693
+  "=mixed a() { return combine_path(\"/\",\"foo/.../sune\"); }\n"+	// test 707
   "mixed b() { return \"/foo/.../sune\"; }",
-  "=mixed a() { return combine_path(\"/./foo/bar//gazonk/\",\"../\"); }\n"+	// test 694
+  "=mixed a() { return combine_path(\"/./foo/bar//gazonk/\",\"../\"); }\n"+	// test 708
   "mixed b() { return \"/foo/bar/\"; }",
-  "=mixed a() { return combine_path(\"/\",\"/foo/./bar/gazonk/..\"); }\n"+	// test 695
+  "=mixed a() { return combine_path(\"/\",\"/foo/./bar/gazonk/..\"); }\n"+	// test 709
   "mixed b() { return \"/foo/bar\"; }",
-  "=mixed a() { return combine_path(\"/\",\"/foo/bar/gazonk/../../\"); }\n"+	// test 696
+  "=mixed a() { return combine_path(\"/\",\"/foo/bar/gazonk/../../\"); }\n"+	// test 710
   "mixed b() { return \"/foo/\"; }",
-  "=mixed a() { return combine_path(\"/\",\"/foo//bar/gazonk/../..\"); }\n"+	// test 697
+  "=mixed a() { return combine_path(\"/\",\"/foo//bar/gazonk/../..\"); }\n"+	// test 711
   "mixed b() { return \"/foo\"; }",
-  "=mixed a() { return combine_path(\"/\",\"/foo/bar/./gazonk/../../..\"); }\n"+	// test 698
+  "=mixed a() { return combine_path(\"/\",\"/foo/bar/./gazonk/../../..\"); }\n"+	// test 712
   "mixed b() { return \"/\"; }",
-  "=mixed a() { return combine_path(\"/\",\"/foo/../bar//./gazonk/../..\"); }\n"+	// test 699
+  "=mixed a() { return combine_path(\"/\",\"/foo/../bar//./gazonk/../..\"); }\n"+	// test 713
   "mixed b() { return \"/\"; }",
-  "=mixed a() { return combine_path(\"/\",\"/foo/././/bar/gazonk/../../../..\"); }\n"+	// test 700
+  "=mixed a() { return combine_path(\"/\",\"/foo/././/bar/gazonk/../../../..\"); }\n"+	// test 714
   "mixed b() { return \"/\"; }",
 
 // - compile_file
@@ -1626,52 +1648,52 @@ int main(int argc, string *argv)
 // see test for clone()
 
 // - copy_value
-  "=mixed a() { return copy_value(1); }\n"+	// test 701
+  "=mixed a() { return copy_value(1); }\n"+	// test 715
   "mixed b() { return 1; }",
-  "=mixed a() { return copy_value(\"\"); }\n"+	// test 702
+  "=mixed a() { return copy_value(\"\"); }\n"+	// test 716
   "mixed b() { return \"\"; }",
-  "=mixed a() { return copy_value(1.0); }\n"+	// test 703
+  "=mixed a() { return copy_value(1.0); }\n"+	// test 717
   "mixed b() { return 1.0; }",
-  "=mixed a() { return copy_value(this_object()); }\n"+	// test 704
+  "=mixed a() { return copy_value(this_object()); }\n"+	// test 718
   "mixed b() { return this_object(); }",
-  "=mixed a() { return copy_value(a); }\n"+	// test 705
+  "=mixed a() { return copy_value(a); }\n"+	// test 719
   "mixed b() { return a; }",
 
 
-  "=mixed a() { mixed x=({1}) ; return x==x; }\n"+	// test 706
+  "=mixed a() { mixed x=({1}) ; return x==x; }\n"+	// test 720
   "mixed b() { return 1; }",
-  "=mixed a() { mixed x=({1}) ; return copy_value(x)!=x; }\n"+	// test 707
+  "=mixed a() { mixed x=({1}) ; return copy_value(x)!=x; }\n"+	// test 721
   "mixed b() { return 1; }",
-  "=mixed a() { mixed x=({1}) ; return equal(copy_value(x),x); }\n"+	// test 708
+  "=mixed a() { mixed x=({1}) ; return equal(copy_value(x),x); }\n"+	// test 722
   "mixed b() { return 1; }",
 
-  "=mixed a() { mixed x=([]) ; return x==x; }\n"+	// test 709
+  "=mixed a() { mixed x=([]) ; return x==x; }\n"+	// test 723
   "mixed b() { return 1; }",
-  "=mixed a() { mixed x=([]) ; return copy_value(x)!=x; }\n"+	// test 710
+  "=mixed a() { mixed x=([]) ; return copy_value(x)!=x; }\n"+	// test 724
   "mixed b() { return 1; }",
-  "=mixed a() { mixed x=([]) ; return equal(copy_value(x),x); }\n"+	// test 711
+  "=mixed a() { mixed x=([]) ; return equal(copy_value(x),x); }\n"+	// test 725
   "mixed b() { return 1; }",
 
-  "=mixed a() { mixed x=(<>) ; return x==x; }\n"+	// test 712
+  "=mixed a() { mixed x=(<>) ; return x==x; }\n"+	// test 726
   "mixed b() { return 1; }",
-  "=mixed a() { mixed x=(<>) ; return copy_value(x)!=x; }\n"+	// test 713
+  "=mixed a() { mixed x=(<>) ; return copy_value(x)!=x; }\n"+	// test 727
   "mixed b() { return 1; }",
-  "=mixed a() { mixed x=(<>) ; return equal(copy_value(x),x); }\n"+	// test 714
+  "=mixed a() { mixed x=(<>) ; return equal(copy_value(x),x); }\n"+	// test 728
   "mixed b() { return 1; }",
 
-  "=mixed a() { mixed x=(< ([]), ({1}) ,\"\" , 1.0 >) ; return x==x; }\n"+	// test 715
+  "=mixed a() { mixed x=(< ([]), ({1}) ,\"\" , 1.0 >) ; return x==x; }\n"+	// test 729
   "mixed b() { return 1; }",
-  "=mixed a() { mixed x=(< ([]), ({1}) ,\"\" , 1.0 >) ; return copy_value(x)!=x; }\n"+	// test 716
+  "=mixed a() { mixed x=(< ([]), ({1}) ,\"\" , 1.0 >) ; return copy_value(x)!=x; }\n"+	// test 730
   "mixed b() { return 1; }",
-  "=mixed a() { mixed x=(< ([]), ({1}) ,\"\" , 1.0 >) ; return equal(copy_value(x),x); }\n"+	// test 717
+  "=mixed a() { mixed x=(< ([]), ({1}) ,\"\" , 1.0 >) ; return equal(copy_value(x),x); }\n"+	// test 731
   "mixed b() { return 1; }",
 
 // - crypt
-  "tmixed a() { return stringp(crypt(\"hej\")); }",	// test 718
-  "tmixed a() { return crypt(\"hej\",crypt(\"hej\")); }",	// test 719
+  "tmixed a() { return stringp(crypt(\"hej\")); }",	// test 732
+  "tmixed a() { return crypt(\"hej\",crypt(\"hej\")); }",	// test 733
 
 // - ctime
-  "tmixed a() { return stringp(ctime(0)); }",	// test 720
+  "tmixed a() { return stringp(ctime(0)); }",	// test 734
 
 // - destruct
 // FIXME put tests for destruct here.
@@ -1683,171 +1705,171 @@ int main(int argc, string *argv)
 // FIXME put test for exit here
 
 // - explode
-  "emixed a() { return ({\"a\",\"b\",\"c\",}); }\n"+	// test 721
+  "emixed a() { return ({\"a\",\"b\",\"c\",}); }\n"+	// test 735
   "mixed b() { return explode(\"anna bnna c\",\"nna \"); }",
-  "emixed a() { return ({\"\",\"\",}); }\n"+	// test 722
+  "emixed a() { return ({\"\",\"\",}); }\n"+	// test 736
   "mixed b() { return explode(\"hej\",\"hej\"); }",
-  "emixed a() { return ({\"\",}); }\n"+	// test 723
+  "emixed a() { return ({\"\",}); }\n"+	// test 737
   "mixed b() { return explode(\"\",\"hej\"); }",
 
 // - fork()
 // FIXME: add tests for fork
 
 // - function_name
-  "=mixed a() { return function_name(a); }\n"+	// test 724
+  "=mixed a() { return function_name(a); }\n"+	// test 738
   "mixed b() { return \"a\"; }",
-  "=mixed a() { return function_name(function_name); }\n"+	// test 725
+  "=mixed a() { return function_name(function_name); }\n"+	// test 739
   "mixed b() { return 0; }",
 
 // - function_object
-  "=mixed a() { return function_object(a); }\n"+	// test 726
+  "=mixed a() { return function_object(a); }\n"+	// test 740
   "mixed b() { return this_object(); }",
-  "=mixed a() { return function_name(function_object); }\n"+	// test 727
+  "=mixed a() { return function_name(function_object); }\n"+	// test 741
   "mixed b() { return 0; }",
 
 // - get_function (actually in simulate.lpc)
-  "=mixed a() { return a; }\n"+	// test 728
+  "=mixed a() { return a; }\n"+	// test 742
   "mixed b() { return get_function(this_object(),\"a\"); }",
-  "=mixed a() { return a; }\n"+	// test 729
+  "=mixed a() { return a; }\n"+	// test 743
   "mixed b() { return this_object()->a; }",
 
 // - hash
-  "tmixed a() { return intp(hash(\"foo\")); }",	// test 730
-  "tmixed a() { return intp(hash(\"foo\",10)); }",	// test 731
-  "tmixed a() { return hash(\"foo\",10)<10; }",	// test 732
-  "tmixed a() { return hash(\"bar\",10)<10; }",	// test 733
-  "tmixed a() { return hash(\"gazonk\",10)<10; }",	// test 734
-  "=mixed a() { return hash(\"foobargazonk\"); }\n"+	// test 735
+  "tmixed a() { return intp(hash(\"foo\")); }",	// test 744
+  "tmixed a() { return intp(hash(\"foo\",10)); }",	// test 745
+  "tmixed a() { return hash(\"foo\",10)<10; }",	// test 746
+  "tmixed a() { return hash(\"bar\",10)<10; }",	// test 747
+  "tmixed a() { return hash(\"gazonk\",10)<10; }",	// test 748
+  "=mixed a() { return hash(\"foobargazonk\"); }\n"+	// test 749
   "mixed b() { return hash(\"foobargazonk\"); }",
 
 // - implode
-  "=mixed a() { return implode(({}),\"\"); }\n"+	// test 736
+  "=mixed a() { return implode(({}),\"\"); }\n"+	// test 750
   "mixed b() { return \"\"; }",
-  "=mixed a() { return implode(explode(\"foo\",\"o\"),\"o\"); }\n"+	// test 737
+  "=mixed a() { return implode(explode(\"foo\",\"o\"),\"o\"); }\n"+	// test 751
   "mixed b() { return \"foo\"; }",
-  "=mixed a() { return implode(({\"foo\",\"bar\"}),\"-\"); }\n"+	// test 738
+  "=mixed a() { return implode(({\"foo\",\"bar\"}),\"-\"); }\n"+	// test 752
   "mixed b() { return \"foo-bar\"; }",
-  "=mixed a() { return implode(({\"foo\",0,\"bar\"}),\"-\"); }\n"+	// test 739
+  "=mixed a() { return implode(({\"foo\",0,\"bar\"}),\"-\"); }\n"+	// test 753
   "mixed b() { return \"foo-bar\"; }",
-  "=mixed a() { return implode(({1.0,\"foo\",0,\"bar\",this_object(),([])}),\"-\"); }\n"+	// test 740
+  "=mixed a() { return implode(({1.0,\"foo\",0,\"bar\",this_object(),([])}),\"-\"); }\n"+	// test 754
   "mixed b() { return \"foo-bar\"; }",
-  "=mixed a() { return implode(({\"f\",\"o\",\"o\"})); }\n"+	// test 741
+  "=mixed a() { return implode(({\"f\",\"o\",\"o\"})); }\n"+	// test 755
   "mixed b() { return \"foo\"; }",
 
 // - indices
-  "emixed a() { return indices(\"foo\"); }\n"+	// test 742
+  "emixed a() { return indices(\"foo\"); }\n"+	// test 756
   "mixed b() { return ({0,1,2}); }",
-  "emixed a() { return indices(({'f','o','o'})); }\n"+	// test 743
+  "emixed a() { return indices(({'f','o','o'})); }\n"+	// test 757
   "mixed b() { return ({0,1,2}); }",
-  "emixed a() { return sort_array(indices(([7:3,8:9,99:12]))); }\n"+	// test 744
+  "emixed a() { return sort_array(indices(([7:3,8:9,99:12]))); }\n"+	// test 758
   "mixed b() { return ({7,8,99}); }",
-  "emixed a() { return sort_array(indices((<7,8,99>))); }\n"+	// test 745
+  "emixed a() { return sort_array(indices((<7,8,99>))); }\n"+	// test 759
   "mixed b() { return ({7,8,99}); }",
 
 // - lower_case
-  "emixed a() { return lower_case(\"foo\"); }\n"+	// test 746
+  "emixed a() { return lower_case(\"foo\"); }\n"+	// test 760
   "mixed b() { return \"foo\"; }",
-  "emixed a() { return lower_case(\"Foo\"); }\n"+	// test 747
+  "emixed a() { return lower_case(\"Foo\"); }\n"+	// test 761
   "mixed b() { return \"foo\"; }",
-  "emixed a() { return lower_case(\"Foo1234-*~\\n\"); }\n"+	// test 748
+  "emixed a() { return lower_case(\"Foo1234-*~\\n\"); }\n"+	// test 762
   "mixed b() { return \"foo1234-*~\\n\"; }",
 
 // - next_object
-  "tmixed a() { return objectp(next_object()); }",	// test 749
-  "=mixed a() { int e;object o=next_object(); for(e=0;e<1000 && o;e++) o=next_object(o); return o; }\n"+	// test 750
+  "tmixed a() { return objectp(next_object()); }",	// test 763
+  "=mixed a() { int e;object o=next_object(); for(e=0;e<1000 && o;e++) o=next_object(o); return o; }\n"+	// test 764
   "mixed b() { return 0; }",
 
 // - object_program
-  "tmixed a() { return programp(object_program(this_object())); }",	// test 751
+  "tmixed a() { return programp(object_program(this_object())); }",	// test 765
 
 // - query_host_name
-  "tmixed a() { return stringp(query_host_name()); }",	// test 752
+  "tmixed a() { return stringp(query_host_name()); }",	// test 766
 
 // - query_num_arg
-  "=mixed a() { return lambda(int ... q) { return query_num_arg(); }(); }\n"+	// test 753
+  "=mixed a() { return lambda(int ... q) { return query_num_arg(); }(); }\n"+	// test 767
   "mixed b() { return 0; }",
-  "=mixed a() { return lambda(int ... q) { return query_num_arg(); }(1); }\n"+	// test 754
+  "=mixed a() { return lambda(int ... q) { return query_num_arg(); }(1); }\n"+	// test 768
   "mixed b() { return 1; }",
-  "=mixed a() { return lambda(int ... q) { return query_num_arg(); }(1,1); }\n"+	// test 755
+  "=mixed a() { return lambda(int ... q) { return query_num_arg(); }(1,1); }\n"+	// test 769
   "mixed b() { return 2; }",
-  "=mixed a() { return lambda(int ... q) { return query_num_arg(); }(1,1,1); }\n"+	// test 756
+  "=mixed a() { return lambda(int ... q) { return query_num_arg(); }(1,1,1); }\n"+	// test 770
   "mixed b() { return 3; }",
-  "=mixed a() { return lambda(int ... q) { return query_num_arg(); }(1,1,1,1); }\n"+	// test 757
+  "=mixed a() { return lambda(int ... q) { return query_num_arg(); }(1,1,1,1); }\n"+	// test 771
   "mixed b() { return 4; }",
 
 // - random
-  "=mixed a() { int e,d;for(e=0;e<1000;e++){d=random(10); if(d<0 || d>=10) return 0;} return 1; }\n"+	// test 758
+  "=mixed a() { int e,d;for(e=0;e<1000;e++){d=random(10); if(d<0 || d>=10) return 0;} return 1; }\n"+	// test 772
   "mixed b() { return 1; }",
 
 // - replace
-  "=mixed a() { return replace(\"foobargazonk\",\"o\",\"-\"); }\n"+	// test 759
+  "=mixed a() { return replace(\"foobargazonk\",\"o\",\"-\"); }\n"+	// test 773
   "mixed b() { return \"f--bargaz-nk\"; }",
-  "=mixed a() { return replace(\"foobargazonk\",({\"o\",\"a\"}),({\"()\",\"<>\"})); }\n"+	// test 760
+  "=mixed a() { return replace(\"foobargazonk\",({\"o\",\"a\"}),({\"()\",\"<>\"})); }\n"+	// test 774
   "mixed b() { return \"f()()b<>rg<>z()nk\"; }",
-  "=mixed a() { return replace(\"f--barf--\",({\"f--\",\"f--bar\"}),({\"f--bar\",\"f--\"})); }\n"+	// test 761
+  "=mixed a() { return replace(\"f--barf--\",({\"f--\",\"f--bar\"}),({\"f--bar\",\"f--\"})); }\n"+	// test 775
   "mixed b() { return \"f--f--bar\"; }",
-  "=mixed a() { return replace(\"f--barf--\",({\"f--bar\",\"f--\"}),({\"f--\",\"f--bar\"})); }\n"+	// test 762
+  "=mixed a() { return replace(\"f--barf--\",({\"f--bar\",\"f--\"}),({\"f--\",\"f--bar\"})); }\n"+	// test 776
   "mixed b() { return \"f--f--bar\"; }",
-  "emixed a() { return replace(({1,2,3,4,5,1,2,3,4}),3,-1); }\n"+	// test 763
+  "emixed a() { return replace(({1,2,3,4,5,1,2,3,4}),3,-1); }\n"+	// test 777
   "mixed b() { return ({1,2,-1,4,5,1,2,-1,4}); }",
-  "emixed a() { return replace(([1:2,3:4,5:1,2:3]),3,-1); }\n"+	// test 764
+  "emixed a() { return replace(([1:2,3:4,5:1,2:3]),3,-1); }\n"+	// test 778
   "mixed b() { return ([1:2,3:4,5:1,2:-1]); }",
 
 // - reverse
-  "=mixed a() { return reverse(\"reverse\"); }\n"+	// test 765
+  "=mixed a() { return reverse(\"reverse\"); }\n"+	// test 779
   "mixed b() { return \"esrever\"; }",
-  "=mixed a() { return reverse(\"\"); }\n"+	// test 766
+  "=mixed a() { return reverse(\"\"); }\n"+	// test 780
   "mixed b() { return \"\"; }",
-  "=mixed a() { return reverse(\"a\"); }\n"+	// test 767
+  "=mixed a() { return reverse(\"a\"); }\n"+	// test 781
   "mixed b() { return \"a\"; }",
-  "emixed a() { return reverse(({1,5,9})); }\n"+	// test 768
+  "emixed a() { return reverse(({1,5,9})); }\n"+	// test 782
   "mixed b() { return ({9,5,1}); }",
-  "emixed a() { return reverse(0x12345678); }\n"+	// test 769
+  "emixed a() { return reverse(0x12345678); }\n"+	// test 783
   "mixed b() { return 0x1e6a2c48; }",
 
 // - rusage
-  "tmixed a() { return arrayp(rusage()); }",	// test 770
-  "tmixed a() { return sizeof(rusage())>0; }",	// test 771
+  "tmixed a() { return arrayp(rusage()); }",	// test 784
+  "tmixed a() { return sizeof(rusage())>0; }",	// test 785
 
 // - search
-  "=mixed a() { return search(\"foolbar\",\"gazonk\"); }\n"+	// test 772
+  "=mixed a() { return search(\"foolbar\",\"gazonk\"); }\n"+	// test 786
   "mixed b() { return -1; }",
-  "=mixed a() { return search(\"qowiueproqiuweproiwqueoplkjljlklksjjriwueproiuwerowieu\",\"lkjljlklksjj\"); }\n"+	// test 773
+  "=mixed a() { return search(\"qowiueproqiuweproiwqueoplkjljlklksjjriwueproiuwerowieu\",\"lkjljlklksjj\"); }\n"+	// test 787
   "mixed b() { return 24; }",
-  "=mixed a() { return search(\"lkjljlklksjjriwueproiuwerlskjdvlaskjfowieu\",\"lkjljlklksjj\"); }\n"+	// test 774
+  "=mixed a() { return search(\"lkjljlklksjjriwueproiuwerlskjdvlaskjfowieu\",\"lkjljlklksjj\"); }\n"+	// test 788
   "mixed b() { return 0; }",
-  "=mixed a() { return search(\"aaaaaaaaaaaaaaaaaaaaaaaalkjljlklksjj\",\"lkjljlklksjj\"); }\n"+	// test 775
+  "=mixed a() { return search(\"aaaaaaaaaaaaaaaaaaaaaaaalkjljlklksjj\",\"lkjljlklksjj\"); }\n"+	// test 789
   "mixed b() { return 24; }",
-  "=mixed a() { return search(\"foobargazonk\",\"oo\"); }\n"+	// test 776
+  "=mixed a() { return search(\"foobargazonk\",\"oo\"); }\n"+	// test 790
   "mixed b() { return 1; }",
-  "=mixed a() { return search(\"foobargazonk\",\"o\",3); }\n"+	// test 777
+  "=mixed a() { return search(\"foobargazonk\",\"o\",3); }\n"+	// test 791
   "mixed b() { return 9; }",
-  "=mixed a() { return search(\"foobargazonk\",\"o\",9); }\n"+	// test 778
+  "=mixed a() { return search(\"foobargazonk\",\"o\",9); }\n"+	// test 792
   "mixed b() { return 9; }",
-  "=mixed a() { return search(\"foobargazonk\",\"o\",10); }\n"+	// test 779
+  "=mixed a() { return search(\"foobargazonk\",\"o\",10); }\n"+	// test 793
   "mixed b() { return -1; }",
-  "=mixed a() { return search(\"foobargazonk\",\"x\",9); }\n"+	// test 780
+  "=mixed a() { return search(\"foobargazonk\",\"x\",9); }\n"+	// test 794
   "mixed b() { return -1; }",
-  "=mixed a() { return search(({56,8,2,6,2,7,3,56,7}),8); }\n"+	// test 781
+  "=mixed a() { return search(({56,8,2,6,2,7,3,56,7}),8); }\n"+	// test 795
   "mixed b() { return 1; }",
-  "=mixed a() { return search(({56,8,2,6,2,7,3,56,7}),56,0); }\n"+	// test 782
+  "=mixed a() { return search(({56,8,2,6,2,7,3,56,7}),56,0); }\n"+	// test 796
   "mixed b() { return 0; }",
-  "=mixed a() { return search(({56,8,2,6,2,7,3,56,7}),56,1); }\n"+	// test 783
+  "=mixed a() { return search(({56,8,2,6,2,7,3,56,7}),56,1); }\n"+	// test 797
   "mixed b() { return 7; }",
-  "=mixed a() { return search(({56,8,2,6,2,7,3,56,7}),56,7); }\n"+	// test 784
+  "=mixed a() { return search(({56,8,2,6,2,7,3,56,7}),56,7); }\n"+	// test 798
   "mixed b() { return 7; }",
-  "=mixed a() { return search(({56,8,2,6,2,7,3,56,7}),56,8); }\n"+	// test 785
+  "=mixed a() { return search(({56,8,2,6,2,7,3,56,7}),56,8); }\n"+	// test 799
   "mixed b() { return -1; }",
-  "=mixed a() { return search(({\"foo\"}),\"foo\"); }\n"+	// test 786
+  "=mixed a() { return search(({\"foo\"}),\"foo\"); }\n"+	// test 800
   "mixed b() { return 0; }",
-  "=mixed a() { return search(\"fo-obar|gazonk\"/\"|\",\"fo-obar\"); }\n"+	// test 787
+  "=mixed a() { return search(\"fo-obar|gazonk\"/\"|\",\"fo-obar\"); }\n"+	// test 801
   "mixed b() { return 0; }",
-  "=mixed a() { return search(\"fo-obar|gazonk\"/\"|\",\"gazonk\"); }\n"+	// test 788
+  "=mixed a() { return search(\"fo-obar|gazonk\"/\"|\",\"gazonk\"); }\n"+	// test 802
   "mixed b() { return 1; }",
-  "=mixed a() { return search(([1:2,3:4,5:6,7:8]),4); }\n"+	// test 789
+  "=mixed a() { return search(([1:2,3:4,5:6,7:8]),4); }\n"+	// test 803
   "mixed b() { return 3; }",
-  "tmixed a() { return zero_type(search(([1:2,3:4,5:6,7:8]),1)); }",	// test 790
-  "=mixed a() { return search(([1:2,3:4,5:6,7:8]),8); }\n"+	// test 791
+  "tmixed a() { return zero_type(search(([1:2,3:4,5:6,7:8]),1)); }",	// test 804
+  "=mixed a() { return search(([1:2,3:4,5:6,7:8]),8); }\n"+	// test 805
   "mixed b() { return 7; }",
 
 // test large searches (find string, size, pattern)
@@ -1860,1637 +1882,1625 @@ int main(int argc, string *argv)
 
 
 
-  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+\"+-*\"+\"'*n\",10),\"SUNE\"); }\n"+	// test 792
+  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+\"+-*\"+\"'*n\",10),\"SUNE\"); }\n"+	// test 806
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,10),\"SUNE\"); }\n"+	// test 793
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,10),\"SUNE\"); }\n"+	// test 807
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"SUNE\",10),\"SUNE\"); }\n"+	// test 794
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"SUNE\",10),\"SUNE\"); }\n"+	// test 808
   "mixed b() { return 10; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"SUNE\"+\"%'\"+\"+-*\"+\"'*n\",10,10),\"SUNE\"); }\n"+	// test 795
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"SUNE\"+\"%'\"+\"+-*\"+\"'*n\",10,10),\"SUNE\"); }\n"+	// test 809
   "mixed b() { return 10; }",
 
 
-  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+\"+-*\"+\"'*n\",10+1),\"SUNE\"); }\n"+	// test 796
+  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+\"+-*\"+\"'*n\",10+1),\"SUNE\"); }\n"+	// test 810
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,10+1),\"SUNE\"); }\n"+	// test 797
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,10+1),\"SUNE\"); }\n"+	// test 811
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"SUNE\",10+1),\"SUNE\"); }\n"+	// test 798
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"SUNE\",10+1),\"SUNE\"); }\n"+	// test 812
   "mixed b() { return 10+1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"SUNE\"+\"%'\"+\"+-*\"+\"'*n\",10+1,10+1),\"SUNE\"); }\n"+	// test 799
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"SUNE\"+\"%'\"+\"+-*\"+\"'*n\",10+1,10+1),\"SUNE\"); }\n"+	// test 813
   "mixed b() { return 10+1; }",
 
 
-  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+\"+-*\"+\"'*n\",10+2),\"SUNE\"); }\n"+	// test 800
+  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+\"+-*\"+\"'*n\",10+2),\"SUNE\"); }\n"+	// test 814
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,10+2),\"SUNE\"); }\n"+	// test 801
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,10+2),\"SUNE\"); }\n"+	// test 815
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"SUNE\",10+2),\"SUNE\"); }\n"+	// test 802
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"SUNE\",10+2),\"SUNE\"); }\n"+	// test 816
   "mixed b() { return 10+2; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"SUNE\"+\"%'\"+\"+-*\"+\"'*n\",10+2,10+2),\"SUNE\"); }\n"+	// test 803
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"SUNE\"+\"%'\"+\"+-*\"+\"'*n\",10+2,10+2),\"SUNE\"); }\n"+	// test 817
   "mixed b() { return 10+2; }",
 
 
-  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+\"+-*\"+\"'*n\",10+3),\"SUNE\"); }\n"+	// test 804
+  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+\"+-*\"+\"'*n\",10+3),\"SUNE\"); }\n"+	// test 818
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,10+3),\"SUNE\"); }\n"+	// test 805
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,10+3),\"SUNE\"); }\n"+	// test 819
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"SUNE\",10+3),\"SUNE\"); }\n"+	// test 806
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"SUNE\",10+3),\"SUNE\"); }\n"+	// test 820
   "mixed b() { return 10+3; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"SUNE\"+\"%'\"+\"+-*\"+\"'*n\",10+3,10+3),\"SUNE\"); }\n"+	// test 807
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"SUNE\"+\"%'\"+\"+-*\"+\"'*n\",10+3,10+3),\"SUNE\"); }\n"+	// test 821
   "mixed b() { return 10+3; }",
 
 
 
-  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+\"+-*\"+\"'*n\",1000),\"SUNE\"); }\n"+	// test 808
+  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+\"+-*\"+\"'*n\",1000),\"SUNE\"); }\n"+	// test 822
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,1000),\"SUNE\"); }\n"+	// test 809
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,1000),\"SUNE\"); }\n"+	// test 823
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"SUNE\",1000),\"SUNE\"); }\n"+	// test 810
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"SUNE\",1000),\"SUNE\"); }\n"+	// test 824
   "mixed b() { return 1000; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"SUNE\"+\"%'\"+\"+-*\"+\"'*n\",1000,1000),\"SUNE\"); }\n"+	// test 811
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"SUNE\"+\"%'\"+\"+-*\"+\"'*n\",1000,1000),\"SUNE\"); }\n"+	// test 825
   "mixed b() { return 1000; }",
 
 
-  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+\"+-*\"+\"'*n\",1000+1),\"SUNE\"); }\n"+	// test 812
+  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+\"+-*\"+\"'*n\",1000+1),\"SUNE\"); }\n"+	// test 826
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,1000+1),\"SUNE\"); }\n"+	// test 813
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,1000+1),\"SUNE\"); }\n"+	// test 827
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"SUNE\",1000+1),\"SUNE\"); }\n"+	// test 814
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"SUNE\",1000+1),\"SUNE\"); }\n"+	// test 828
   "mixed b() { return 1000+1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"SUNE\"+\"%'\"+\"+-*\"+\"'*n\",1000+1,1000+1),\"SUNE\"); }\n"+	// test 815
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"SUNE\"+\"%'\"+\"+-*\"+\"'*n\",1000+1,1000+1),\"SUNE\"); }\n"+	// test 829
   "mixed b() { return 1000+1; }",
 
 
-  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+\"+-*\"+\"'*n\",1000+2),\"SUNE\"); }\n"+	// test 816
+  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+\"+-*\"+\"'*n\",1000+2),\"SUNE\"); }\n"+	// test 830
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,1000+2),\"SUNE\"); }\n"+	// test 817
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,1000+2),\"SUNE\"); }\n"+	// test 831
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"SUNE\",1000+2),\"SUNE\"); }\n"+	// test 818
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"SUNE\",1000+2),\"SUNE\"); }\n"+	// test 832
   "mixed b() { return 1000+2; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"SUNE\"+\"%'\"+\"+-*\"+\"'*n\",1000+2,1000+2),\"SUNE\"); }\n"+	// test 819
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"SUNE\"+\"%'\"+\"+-*\"+\"'*n\",1000+2,1000+2),\"SUNE\"); }\n"+	// test 833
   "mixed b() { return 1000+2; }",
 
 
-  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+\"+-*\"+\"'*n\",1000+3),\"SUNE\"); }\n"+	// test 820
+  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+\"+-*\"+\"'*n\",1000+3),\"SUNE\"); }\n"+	// test 834
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,1000+3),\"SUNE\"); }\n"+	// test 821
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,1000+3),\"SUNE\"); }\n"+	// test 835
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"SUNE\",1000+3),\"SUNE\"); }\n"+	// test 822
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"SUNE\",1000+3),\"SUNE\"); }\n"+	// test 836
   "mixed b() { return 1000+3; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"SUNE\"+\"%'\"+\"+-*\"+\"'*n\",1000+3,1000+3),\"SUNE\"); }\n"+	// test 823
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"SUNE\"+\"%'\"+\"+-*\"+\"'*n\",1000+3,1000+3),\"SUNE\"); }\n"+	// test 837
   "mixed b() { return 1000+3; }",
 
 
 
-  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+\"+-*\"+\"'*n\",100000),\"SUNE\"); }\n"+	// test 824
+  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+\"+-*\"+\"'*n\",100000),\"SUNE\"); }\n"+	// test 838
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,100000),\"SUNE\"); }\n"+	// test 825
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,100000),\"SUNE\"); }\n"+	// test 839
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"SUNE\",100000),\"SUNE\"); }\n"+	// test 826
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"SUNE\",100000),\"SUNE\"); }\n"+	// test 840
   "mixed b() { return 100000; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"SUNE\"+\"%'\"+\"+-*\"+\"'*n\",100000,100000),\"SUNE\"); }\n"+	// test 827
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"SUNE\"+\"%'\"+\"+-*\"+\"'*n\",100000,100000),\"SUNE\"); }\n"+	// test 841
   "mixed b() { return 100000; }",
 
 
-  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+\"+-*\"+\"'*n\",100000+1),\"SUNE\"); }\n"+	// test 828
+  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+\"+-*\"+\"'*n\",100000+1),\"SUNE\"); }\n"+	// test 842
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,100000+1),\"SUNE\"); }\n"+	// test 829
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,100000+1),\"SUNE\"); }\n"+	// test 843
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"SUNE\",100000+1),\"SUNE\"); }\n"+	// test 830
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"SUNE\",100000+1),\"SUNE\"); }\n"+	// test 844
   "mixed b() { return 100000+1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"SUNE\"+\"%'\"+\"+-*\"+\"'*n\",100000+1,100000+1),\"SUNE\"); }\n"+	// test 831
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"SUNE\"+\"%'\"+\"+-*\"+\"'*n\",100000+1,100000+1),\"SUNE\"); }\n"+	// test 845
   "mixed b() { return 100000+1; }",
 
 
-  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+\"+-*\"+\"'*n\",100000+2),\"SUNE\"); }\n"+	// test 832
+  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+\"+-*\"+\"'*n\",100000+2),\"SUNE\"); }\n"+	// test 846
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,100000+2),\"SUNE\"); }\n"+	// test 833
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,100000+2),\"SUNE\"); }\n"+	// test 847
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"SUNE\",100000+2),\"SUNE\"); }\n"+	// test 834
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"SUNE\",100000+2),\"SUNE\"); }\n"+	// test 848
   "mixed b() { return 100000+2; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"SUNE\"+\"%'\"+\"+-*\"+\"'*n\",100000+2,100000+2),\"SUNE\"); }\n"+	// test 835
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"SUNE\"+\"%'\"+\"+-*\"+\"'*n\",100000+2,100000+2),\"SUNE\"); }\n"+	// test 849
   "mixed b() { return 100000+2; }",
 
 
-  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+\"+-*\"+\"'*n\",100000+3),\"SUNE\"); }\n"+	// test 836
+  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+\"+-*\"+\"'*n\",100000+3),\"SUNE\"); }\n"+	// test 850
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,100000+3),\"SUNE\"); }\n"+	// test 837
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,100000+3),\"SUNE\"); }\n"+	// test 851
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"SUNE\",100000+3),\"SUNE\"); }\n"+	// test 838
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"SUNE\",100000+3),\"SUNE\"); }\n"+	// test 852
   "mixed b() { return 100000+3; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"SUNE\"+\"%'\"+\"+-*\"+\"'*n\",100000+3,100000+3),\"SUNE\"); }\n"+	// test 839
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"SUNE\"+\"%'\"+\"+-*\"+\"'*n\",100000+3,100000+3),\"SUNE\"); }\n"+	// test 853
   "mixed b() { return 100000+3; }",
 
 
 
 
-  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\",10),\"SUNE\"); }\n"+	// test 840
+  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\",10),\"SUNE\"); }\n"+	// test 854
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\" ,10),\"SUNE\"); }\n"+	// test 841
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\" ,10),\"SUNE\"); }\n"+	// test 855
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\"+\"SUNE\",10),\"SUNE\"); }\n"+	// test 842
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\"+\"SUNE\",10),\"SUNE\"); }\n"+	// test 856
   "mixed b() { return 10; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\"+\"SUNE\"+\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\",10,10),\"SUNE\"); }\n"+	// test 843
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\"+\"SUNE\"+\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\",10,10),\"SUNE\"); }\n"+	// test 857
   "mixed b() { return 10; }",
 
 
-  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\",10+1),\"SUNE\"); }\n"+	// test 844
+  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\",10+1),\"SUNE\"); }\n"+	// test 858
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\" ,10+1),\"SUNE\"); }\n"+	// test 845
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\" ,10+1),\"SUNE\"); }\n"+	// test 859
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\"+\"SUNE\",10+1),\"SUNE\"); }\n"+	// test 846
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\"+\"SUNE\",10+1),\"SUNE\"); }\n"+	// test 860
   "mixed b() { return 10+1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\"+\"SUNE\"+\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\",10+1,10+1),\"SUNE\"); }\n"+	// test 847
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\"+\"SUNE\"+\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\",10+1,10+1),\"SUNE\"); }\n"+	// test 861
   "mixed b() { return 10+1; }",
 
 
-  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\",10+2),\"SUNE\"); }\n"+	// test 848
+  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\",10+2),\"SUNE\"); }\n"+	// test 862
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\" ,10+2),\"SUNE\"); }\n"+	// test 849
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\" ,10+2),\"SUNE\"); }\n"+	// test 863
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\"+\"SUNE\",10+2),\"SUNE\"); }\n"+	// test 850
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\"+\"SUNE\",10+2),\"SUNE\"); }\n"+	// test 864
   "mixed b() { return 10+2; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\"+\"SUNE\"+\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\",10+2,10+2),\"SUNE\"); }\n"+	// test 851
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\"+\"SUNE\"+\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\",10+2,10+2),\"SUNE\"); }\n"+	// test 865
   "mixed b() { return 10+2; }",
 
 
-  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\",10+3),\"SUNE\"); }\n"+	// test 852
+  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\",10+3),\"SUNE\"); }\n"+	// test 866
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\" ,10+3),\"SUNE\"); }\n"+	// test 853
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\" ,10+3),\"SUNE\"); }\n"+	// test 867
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\"+\"SUNE\",10+3),\"SUNE\"); }\n"+	// test 854
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\"+\"SUNE\",10+3),\"SUNE\"); }\n"+	// test 868
   "mixed b() { return 10+3; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\"+\"SUNE\"+\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\",10+3,10+3),\"SUNE\"); }\n"+	// test 855
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\"+\"SUNE\"+\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\",10+3,10+3),\"SUNE\"); }\n"+	// test 869
   "mixed b() { return 10+3; }",
 
 
 
-  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\",1000),\"SUNE\"); }\n"+	// test 856
+  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\",1000),\"SUNE\"); }\n"+	// test 870
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\" ,1000),\"SUNE\"); }\n"+	// test 857
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\" ,1000),\"SUNE\"); }\n"+	// test 871
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\"+\"SUNE\",1000),\"SUNE\"); }\n"+	// test 858
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\"+\"SUNE\",1000),\"SUNE\"); }\n"+	// test 872
   "mixed b() { return 1000; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\"+\"SUNE\"+\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\",1000,1000),\"SUNE\"); }\n"+	// test 859
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\"+\"SUNE\"+\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\",1000,1000),\"SUNE\"); }\n"+	// test 873
   "mixed b() { return 1000; }",
 
 
-  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\",1000+1),\"SUNE\"); }\n"+	// test 860
+  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\",1000+1),\"SUNE\"); }\n"+	// test 874
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\" ,1000+1),\"SUNE\"); }\n"+	// test 861
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\" ,1000+1),\"SUNE\"); }\n"+	// test 875
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\"+\"SUNE\",1000+1),\"SUNE\"); }\n"+	// test 862
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\"+\"SUNE\",1000+1),\"SUNE\"); }\n"+	// test 876
   "mixed b() { return 1000+1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\"+\"SUNE\"+\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\",1000+1,1000+1),\"SUNE\"); }\n"+	// test 863
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\"+\"SUNE\"+\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\",1000+1,1000+1),\"SUNE\"); }\n"+	// test 877
   "mixed b() { return 1000+1; }",
 
 
-  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\",1000+2),\"SUNE\"); }\n"+	// test 864
+  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\",1000+2),\"SUNE\"); }\n"+	// test 878
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\" ,1000+2),\"SUNE\"); }\n"+	// test 865
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\" ,1000+2),\"SUNE\"); }\n"+	// test 879
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\"+\"SUNE\",1000+2),\"SUNE\"); }\n"+	// test 866
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\"+\"SUNE\",1000+2),\"SUNE\"); }\n"+	// test 880
   "mixed b() { return 1000+2; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\"+\"SUNE\"+\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\",1000+2,1000+2),\"SUNE\"); }\n"+	// test 867
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\"+\"SUNE\"+\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\",1000+2,1000+2),\"SUNE\"); }\n"+	// test 881
   "mixed b() { return 1000+2; }",
 
 
-  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\",1000+3),\"SUNE\"); }\n"+	// test 868
+  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\",1000+3),\"SUNE\"); }\n"+	// test 882
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\" ,1000+3),\"SUNE\"); }\n"+	// test 869
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\" ,1000+3),\"SUNE\"); }\n"+	// test 883
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\"+\"SUNE\",1000+3),\"SUNE\"); }\n"+	// test 870
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\"+\"SUNE\",1000+3),\"SUNE\"); }\n"+	// test 884
   "mixed b() { return 1000+3; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\"+\"SUNE\"+\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\",1000+3,1000+3),\"SUNE\"); }\n"+	// test 871
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\"+\"SUNE\"+\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\",1000+3,1000+3),\"SUNE\"); }\n"+	// test 885
   "mixed b() { return 1000+3; }",
 
 
 
-  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\",100000),\"SUNE\"); }\n"+	// test 872
+  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\",100000),\"SUNE\"); }\n"+	// test 886
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\" ,100000),\"SUNE\"); }\n"+	// test 873
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\" ,100000),\"SUNE\"); }\n"+	// test 887
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\"+\"SUNE\",100000),\"SUNE\"); }\n"+	// test 874
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\"+\"SUNE\",100000),\"SUNE\"); }\n"+	// test 888
   "mixed b() { return 100000; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\"+\"SUNE\"+\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\",100000,100000),\"SUNE\"); }\n"+	// test 875
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\"+\"SUNE\"+\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\",100000,100000),\"SUNE\"); }\n"+	// test 889
   "mixed b() { return 100000; }",
 
 
-  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\",100000+1),\"SUNE\"); }\n"+	// test 876
+  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\",100000+1),\"SUNE\"); }\n"+	// test 890
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\" ,100000+1),\"SUNE\"); }\n"+	// test 877
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\" ,100000+1),\"SUNE\"); }\n"+	// test 891
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\"+\"SUNE\",100000+1),\"SUNE\"); }\n"+	// test 878
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\"+\"SUNE\",100000+1),\"SUNE\"); }\n"+	// test 892
   "mixed b() { return 100000+1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\"+\"SUNE\"+\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\",100000+1,100000+1),\"SUNE\"); }\n"+	// test 879
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\"+\"SUNE\"+\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\",100000+1,100000+1),\"SUNE\"); }\n"+	// test 893
   "mixed b() { return 100000+1; }",
 
 
-  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\",100000+2),\"SUNE\"); }\n"+	// test 880
+  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\",100000+2),\"SUNE\"); }\n"+	// test 894
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\" ,100000+2),\"SUNE\"); }\n"+	// test 881
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\" ,100000+2),\"SUNE\"); }\n"+	// test 895
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\"+\"SUNE\",100000+2),\"SUNE\"); }\n"+	// test 882
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\"+\"SUNE\",100000+2),\"SUNE\"); }\n"+	// test 896
   "mixed b() { return 100000+2; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\"+\"SUNE\"+\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\",100000+2,100000+2),\"SUNE\"); }\n"+	// test 883
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\"+\"SUNE\"+\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\",100000+2,100000+2),\"SUNE\"); }\n"+	// test 897
   "mixed b() { return 100000+2; }",
 
 
-  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\",100000+3),\"SUNE\"); }\n"+	// test 884
+  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\",100000+3),\"SUNE\"); }\n"+	// test 898
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\" ,100000+3),\"SUNE\"); }\n"+	// test 885
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\" ,100000+3),\"SUNE\"); }\n"+	// test 899
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\"+\"SUNE\",100000+3),\"SUNE\"); }\n"+	// test 886
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\"+\"SUNE\",100000+3),\"SUNE\"); }\n"+	// test 900
   "mixed b() { return 100000+3; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\"+\"SUNE\"+\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\",100000+3,100000+3),\"SUNE\"); }\n"+	// test 887
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\"+\"SUNE\"+\"%'\"+(\"SUNE\"[0..strlen(\"SUNE\")-2])+\"'*n\",100000+3,100000+3),\"SUNE\"); }\n"+	// test 901
   "mixed b() { return 100000+3; }",
 
 
 
 
-  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\",10),\"SUNE\"); }\n"+	// test 888
+  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\",10),\"SUNE\"); }\n"+	// test 902
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\" ,10),\"SUNE\"); }\n"+	// test 889
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\" ,10),\"SUNE\"); }\n"+	// test 903
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\"+\"SUNE\",10),\"SUNE\"); }\n"+	// test 890
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\"+\"SUNE\",10),\"SUNE\"); }\n"+	// test 904
   "mixed b() { return 10; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\"+\"SUNE\"+\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\",10,10),\"SUNE\"); }\n"+	// test 891
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\"+\"SUNE\"+\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\",10,10),\"SUNE\"); }\n"+	// test 905
   "mixed b() { return 10; }",
 
 
-  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\",10+1),\"SUNE\"); }\n"+	// test 892
+  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\",10+1),\"SUNE\"); }\n"+	// test 906
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\" ,10+1),\"SUNE\"); }\n"+	// test 893
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\" ,10+1),\"SUNE\"); }\n"+	// test 907
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\"+\"SUNE\",10+1),\"SUNE\"); }\n"+	// test 894
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\"+\"SUNE\",10+1),\"SUNE\"); }\n"+	// test 908
   "mixed b() { return 10+1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\"+\"SUNE\"+\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\",10+1,10+1),\"SUNE\"); }\n"+	// test 895
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\"+\"SUNE\"+\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\",10+1,10+1),\"SUNE\"); }\n"+	// test 909
   "mixed b() { return 10+1; }",
 
 
-  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\",10+2),\"SUNE\"); }\n"+	// test 896
+  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\",10+2),\"SUNE\"); }\n"+	// test 910
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\" ,10+2),\"SUNE\"); }\n"+	// test 897
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\" ,10+2),\"SUNE\"); }\n"+	// test 911
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\"+\"SUNE\",10+2),\"SUNE\"); }\n"+	// test 898
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\"+\"SUNE\",10+2),\"SUNE\"); }\n"+	// test 912
   "mixed b() { return 10+2; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\"+\"SUNE\"+\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\",10+2,10+2),\"SUNE\"); }\n"+	// test 899
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\"+\"SUNE\"+\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\",10+2,10+2),\"SUNE\"); }\n"+	// test 913
   "mixed b() { return 10+2; }",
 
 
-  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\",10+3),\"SUNE\"); }\n"+	// test 900
+  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\",10+3),\"SUNE\"); }\n"+	// test 914
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\" ,10+3),\"SUNE\"); }\n"+	// test 901
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\" ,10+3),\"SUNE\"); }\n"+	// test 915
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\"+\"SUNE\",10+3),\"SUNE\"); }\n"+	// test 902
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\"+\"SUNE\",10+3),\"SUNE\"); }\n"+	// test 916
   "mixed b() { return 10+3; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\"+\"SUNE\"+\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\",10+3,10+3),\"SUNE\"); }\n"+	// test 903
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\"+\"SUNE\"+\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\",10+3,10+3),\"SUNE\"); }\n"+	// test 917
   "mixed b() { return 10+3; }",
 
 
 
-  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\",1000),\"SUNE\"); }\n"+	// test 904
+  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\",1000),\"SUNE\"); }\n"+	// test 918
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\" ,1000),\"SUNE\"); }\n"+	// test 905
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\" ,1000),\"SUNE\"); }\n"+	// test 919
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\"+\"SUNE\",1000),\"SUNE\"); }\n"+	// test 906
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\"+\"SUNE\",1000),\"SUNE\"); }\n"+	// test 920
   "mixed b() { return 1000; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\"+\"SUNE\"+\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\",1000,1000),\"SUNE\"); }\n"+	// test 907
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\"+\"SUNE\"+\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\",1000,1000),\"SUNE\"); }\n"+	// test 921
   "mixed b() { return 1000; }",
 
 
-  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\",1000+1),\"SUNE\"); }\n"+	// test 908
+  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\",1000+1),\"SUNE\"); }\n"+	// test 922
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\" ,1000+1),\"SUNE\"); }\n"+	// test 909
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\" ,1000+1),\"SUNE\"); }\n"+	// test 923
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\"+\"SUNE\",1000+1),\"SUNE\"); }\n"+	// test 910
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\"+\"SUNE\",1000+1),\"SUNE\"); }\n"+	// test 924
   "mixed b() { return 1000+1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\"+\"SUNE\"+\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\",1000+1,1000+1),\"SUNE\"); }\n"+	// test 911
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\"+\"SUNE\"+\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\",1000+1,1000+1),\"SUNE\"); }\n"+	// test 925
   "mixed b() { return 1000+1; }",
 
 
-  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\",1000+2),\"SUNE\"); }\n"+	// test 912
+  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\",1000+2),\"SUNE\"); }\n"+	// test 926
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\" ,1000+2),\"SUNE\"); }\n"+	// test 913
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\" ,1000+2),\"SUNE\"); }\n"+	// test 927
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\"+\"SUNE\",1000+2),\"SUNE\"); }\n"+	// test 914
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\"+\"SUNE\",1000+2),\"SUNE\"); }\n"+	// test 928
   "mixed b() { return 1000+2; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\"+\"SUNE\"+\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\",1000+2,1000+2),\"SUNE\"); }\n"+	// test 915
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\"+\"SUNE\"+\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\",1000+2,1000+2),\"SUNE\"); }\n"+	// test 929
   "mixed b() { return 1000+2; }",
 
 
-  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\",1000+3),\"SUNE\"); }\n"+	// test 916
+  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\",1000+3),\"SUNE\"); }\n"+	// test 930
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\" ,1000+3),\"SUNE\"); }\n"+	// test 917
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\" ,1000+3),\"SUNE\"); }\n"+	// test 931
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\"+\"SUNE\",1000+3),\"SUNE\"); }\n"+	// test 918
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\"+\"SUNE\",1000+3),\"SUNE\"); }\n"+	// test 932
   "mixed b() { return 1000+3; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\"+\"SUNE\"+\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\",1000+3,1000+3),\"SUNE\"); }\n"+	// test 919
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\"+\"SUNE\"+\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\",1000+3,1000+3),\"SUNE\"); }\n"+	// test 933
   "mixed b() { return 1000+3; }",
 
 
 
-  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\",100000),\"SUNE\"); }\n"+	// test 920
+  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\",100000),\"SUNE\"); }\n"+	// test 934
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\" ,100000),\"SUNE\"); }\n"+	// test 921
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\" ,100000),\"SUNE\"); }\n"+	// test 935
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\"+\"SUNE\",100000),\"SUNE\"); }\n"+	// test 922
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\"+\"SUNE\",100000),\"SUNE\"); }\n"+	// test 936
   "mixed b() { return 100000; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\"+\"SUNE\"+\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\",100000,100000),\"SUNE\"); }\n"+	// test 923
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\"+\"SUNE\"+\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\",100000,100000),\"SUNE\"); }\n"+	// test 937
   "mixed b() { return 100000; }",
 
 
-  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\",100000+1),\"SUNE\"); }\n"+	// test 924
+  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\",100000+1),\"SUNE\"); }\n"+	// test 938
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\" ,100000+1),\"SUNE\"); }\n"+	// test 925
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\" ,100000+1),\"SUNE\"); }\n"+	// test 939
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\"+\"SUNE\",100000+1),\"SUNE\"); }\n"+	// test 926
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\"+\"SUNE\",100000+1),\"SUNE\"); }\n"+	// test 940
   "mixed b() { return 100000+1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\"+\"SUNE\"+\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\",100000+1,100000+1),\"SUNE\"); }\n"+	// test 927
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\"+\"SUNE\"+\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\",100000+1,100000+1),\"SUNE\"); }\n"+	// test 941
   "mixed b() { return 100000+1; }",
 
 
-  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\",100000+2),\"SUNE\"); }\n"+	// test 928
+  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\",100000+2),\"SUNE\"); }\n"+	// test 942
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\" ,100000+2),\"SUNE\"); }\n"+	// test 929
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\" ,100000+2),\"SUNE\"); }\n"+	// test 943
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\"+\"SUNE\",100000+2),\"SUNE\"); }\n"+	// test 930
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\"+\"SUNE\",100000+2),\"SUNE\"); }\n"+	// test 944
   "mixed b() { return 100000+2; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\"+\"SUNE\"+\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\",100000+2,100000+2),\"SUNE\"); }\n"+	// test 931
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\"+\"SUNE\"+\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\",100000+2,100000+2),\"SUNE\"); }\n"+	// test 945
   "mixed b() { return 100000+2; }",
 
 
-  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\",100000+3),\"SUNE\"); }\n"+	// test 932
+  "=mixed a() { return search(sprintf(\"SUNE\"+\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\",100000+3),\"SUNE\"); }\n"+	// test 946
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\" ,100000+3),\"SUNE\"); }\n"+	// test 933
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\" ,100000+3),\"SUNE\"); }\n"+	// test 947
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\"+\"SUNE\",100000+3),\"SUNE\"); }\n"+	// test 934
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\"+\"SUNE\",100000+3),\"SUNE\"); }\n"+	// test 948
   "mixed b() { return 100000+3; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\"+\"SUNE\"+\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\",100000+3,100000+3),\"SUNE\"); }\n"+	// test 935
+  "=mixed a() { return search(sprintf(\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\"+\"SUNE\"+\"%'\"+(\"SUNE\"[1..0x7fffffff])+\"'*n\",100000+3,100000+3),\"SUNE\"); }\n"+	// test 949
   "mixed b() { return 100000+3; }",
 
 
 
 
 
-  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+\"+-*\"+\"'*n\",10),\"-------------------+\"); }\n"+	// test 936
+  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+\"+-*\"+\"'*n\",10),\"-------------------+\"); }\n"+	// test 950
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,10),\"-------------------+\"); }\n"+	// test 937
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,10),\"-------------------+\"); }\n"+	// test 951
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"-------------------+\",10),\"-------------------+\"); }\n"+	// test 938
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"-------------------+\",10),\"-------------------+\"); }\n"+	// test 952
   "mixed b() { return 10; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"-------------------+\"+\"%'\"+\"+-*\"+\"'*n\",10,10),\"-------------------+\"); }\n"+	// test 939
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"-------------------+\"+\"%'\"+\"+-*\"+\"'*n\",10,10),\"-------------------+\"); }\n"+	// test 953
   "mixed b() { return 10; }",
 
 
-  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+\"+-*\"+\"'*n\",10+1),\"-------------------+\"); }\n"+	// test 940
+  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+\"+-*\"+\"'*n\",10+1),\"-------------------+\"); }\n"+	// test 954
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,10+1),\"-------------------+\"); }\n"+	// test 941
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,10+1),\"-------------------+\"); }\n"+	// test 955
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"-------------------+\",10+1),\"-------------------+\"); }\n"+	// test 942
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"-------------------+\",10+1),\"-------------------+\"); }\n"+	// test 956
   "mixed b() { return 10+1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"-------------------+\"+\"%'\"+\"+-*\"+\"'*n\",10+1,10+1),\"-------------------+\"); }\n"+	// test 943
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"-------------------+\"+\"%'\"+\"+-*\"+\"'*n\",10+1,10+1),\"-------------------+\"); }\n"+	// test 957
   "mixed b() { return 10+1; }",
 
 
-  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+\"+-*\"+\"'*n\",10+2),\"-------------------+\"); }\n"+	// test 944
+  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+\"+-*\"+\"'*n\",10+2),\"-------------------+\"); }\n"+	// test 958
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,10+2),\"-------------------+\"); }\n"+	// test 945
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,10+2),\"-------------------+\"); }\n"+	// test 959
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"-------------------+\",10+2),\"-------------------+\"); }\n"+	// test 946
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"-------------------+\",10+2),\"-------------------+\"); }\n"+	// test 960
   "mixed b() { return 10+2; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"-------------------+\"+\"%'\"+\"+-*\"+\"'*n\",10+2,10+2),\"-------------------+\"); }\n"+	// test 947
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"-------------------+\"+\"%'\"+\"+-*\"+\"'*n\",10+2,10+2),\"-------------------+\"); }\n"+	// test 961
   "mixed b() { return 10+2; }",
 
 
-  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+\"+-*\"+\"'*n\",10+3),\"-------------------+\"); }\n"+	// test 948
+  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+\"+-*\"+\"'*n\",10+3),\"-------------------+\"); }\n"+	// test 962
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,10+3),\"-------------------+\"); }\n"+	// test 949
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,10+3),\"-------------------+\"); }\n"+	// test 963
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"-------------------+\",10+3),\"-------------------+\"); }\n"+	// test 950
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"-------------------+\",10+3),\"-------------------+\"); }\n"+	// test 964
   "mixed b() { return 10+3; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"-------------------+\"+\"%'\"+\"+-*\"+\"'*n\",10+3,10+3),\"-------------------+\"); }\n"+	// test 951
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"-------------------+\"+\"%'\"+\"+-*\"+\"'*n\",10+3,10+3),\"-------------------+\"); }\n"+	// test 965
   "mixed b() { return 10+3; }",
 
 
 
-  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+\"+-*\"+\"'*n\",1000),\"-------------------+\"); }\n"+	// test 952
+  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+\"+-*\"+\"'*n\",1000),\"-------------------+\"); }\n"+	// test 966
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,1000),\"-------------------+\"); }\n"+	// test 953
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,1000),\"-------------------+\"); }\n"+	// test 967
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"-------------------+\",1000),\"-------------------+\"); }\n"+	// test 954
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"-------------------+\",1000),\"-------------------+\"); }\n"+	// test 968
   "mixed b() { return 1000; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"-------------------+\"+\"%'\"+\"+-*\"+\"'*n\",1000,1000),\"-------------------+\"); }\n"+	// test 955
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"-------------------+\"+\"%'\"+\"+-*\"+\"'*n\",1000,1000),\"-------------------+\"); }\n"+	// test 969
   "mixed b() { return 1000; }",
 
 
-  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+\"+-*\"+\"'*n\",1000+1),\"-------------------+\"); }\n"+	// test 956
+  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+\"+-*\"+\"'*n\",1000+1),\"-------------------+\"); }\n"+	// test 970
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,1000+1),\"-------------------+\"); }\n"+	// test 957
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,1000+1),\"-------------------+\"); }\n"+	// test 971
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"-------------------+\",1000+1),\"-------------------+\"); }\n"+	// test 958
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"-------------------+\",1000+1),\"-------------------+\"); }\n"+	// test 972
   "mixed b() { return 1000+1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"-------------------+\"+\"%'\"+\"+-*\"+\"'*n\",1000+1,1000+1),\"-------------------+\"); }\n"+	// test 959
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"-------------------+\"+\"%'\"+\"+-*\"+\"'*n\",1000+1,1000+1),\"-------------------+\"); }\n"+	// test 973
   "mixed b() { return 1000+1; }",
 
 
-  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+\"+-*\"+\"'*n\",1000+2),\"-------------------+\"); }\n"+	// test 960
+  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+\"+-*\"+\"'*n\",1000+2),\"-------------------+\"); }\n"+	// test 974
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,1000+2),\"-------------------+\"); }\n"+	// test 961
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,1000+2),\"-------------------+\"); }\n"+	// test 975
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"-------------------+\",1000+2),\"-------------------+\"); }\n"+	// test 962
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"-------------------+\",1000+2),\"-------------------+\"); }\n"+	// test 976
   "mixed b() { return 1000+2; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"-------------------+\"+\"%'\"+\"+-*\"+\"'*n\",1000+2,1000+2),\"-------------------+\"); }\n"+	// test 963
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"-------------------+\"+\"%'\"+\"+-*\"+\"'*n\",1000+2,1000+2),\"-------------------+\"); }\n"+	// test 977
   "mixed b() { return 1000+2; }",
 
 
-  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+\"+-*\"+\"'*n\",1000+3),\"-------------------+\"); }\n"+	// test 964
+  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+\"+-*\"+\"'*n\",1000+3),\"-------------------+\"); }\n"+	// test 978
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,1000+3),\"-------------------+\"); }\n"+	// test 965
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,1000+3),\"-------------------+\"); }\n"+	// test 979
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"-------------------+\",1000+3),\"-------------------+\"); }\n"+	// test 966
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"-------------------+\",1000+3),\"-------------------+\"); }\n"+	// test 980
   "mixed b() { return 1000+3; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"-------------------+\"+\"%'\"+\"+-*\"+\"'*n\",1000+3,1000+3),\"-------------------+\"); }\n"+	// test 967
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"-------------------+\"+\"%'\"+\"+-*\"+\"'*n\",1000+3,1000+3),\"-------------------+\"); }\n"+	// test 981
   "mixed b() { return 1000+3; }",
 
 
 
-  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+\"+-*\"+\"'*n\",100000),\"-------------------+\"); }\n"+	// test 968
+  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+\"+-*\"+\"'*n\",100000),\"-------------------+\"); }\n"+	// test 982
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,100000),\"-------------------+\"); }\n"+	// test 969
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,100000),\"-------------------+\"); }\n"+	// test 983
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"-------------------+\",100000),\"-------------------+\"); }\n"+	// test 970
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"-------------------+\",100000),\"-------------------+\"); }\n"+	// test 984
   "mixed b() { return 100000; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"-------------------+\"+\"%'\"+\"+-*\"+\"'*n\",100000,100000),\"-------------------+\"); }\n"+	// test 971
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"-------------------+\"+\"%'\"+\"+-*\"+\"'*n\",100000,100000),\"-------------------+\"); }\n"+	// test 985
   "mixed b() { return 100000; }",
 
 
-  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+\"+-*\"+\"'*n\",100000+1),\"-------------------+\"); }\n"+	// test 972
+  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+\"+-*\"+\"'*n\",100000+1),\"-------------------+\"); }\n"+	// test 986
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,100000+1),\"-------------------+\"); }\n"+	// test 973
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,100000+1),\"-------------------+\"); }\n"+	// test 987
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"-------------------+\",100000+1),\"-------------------+\"); }\n"+	// test 974
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"-------------------+\",100000+1),\"-------------------+\"); }\n"+	// test 988
   "mixed b() { return 100000+1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"-------------------+\"+\"%'\"+\"+-*\"+\"'*n\",100000+1,100000+1),\"-------------------+\"); }\n"+	// test 975
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"-------------------+\"+\"%'\"+\"+-*\"+\"'*n\",100000+1,100000+1),\"-------------------+\"); }\n"+	// test 989
   "mixed b() { return 100000+1; }",
 
 
-  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+\"+-*\"+\"'*n\",100000+2),\"-------------------+\"); }\n"+	// test 976
+  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+\"+-*\"+\"'*n\",100000+2),\"-------------------+\"); }\n"+	// test 990
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,100000+2),\"-------------------+\"); }\n"+	// test 977
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,100000+2),\"-------------------+\"); }\n"+	// test 991
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"-------------------+\",100000+2),\"-------------------+\"); }\n"+	// test 978
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"-------------------+\",100000+2),\"-------------------+\"); }\n"+	// test 992
   "mixed b() { return 100000+2; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"-------------------+\"+\"%'\"+\"+-*\"+\"'*n\",100000+2,100000+2),\"-------------------+\"); }\n"+	// test 979
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"-------------------+\"+\"%'\"+\"+-*\"+\"'*n\",100000+2,100000+2),\"-------------------+\"); }\n"+	// test 993
   "mixed b() { return 100000+2; }",
 
 
-  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+\"+-*\"+\"'*n\",100000+3),\"-------------------+\"); }\n"+	// test 980
+  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+\"+-*\"+\"'*n\",100000+3),\"-------------------+\"); }\n"+	// test 994
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,100000+3),\"-------------------+\"); }\n"+	// test 981
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,100000+3),\"-------------------+\"); }\n"+	// test 995
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"-------------------+\",100000+3),\"-------------------+\"); }\n"+	// test 982
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"-------------------+\",100000+3),\"-------------------+\"); }\n"+	// test 996
   "mixed b() { return 100000+3; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"-------------------+\"+\"%'\"+\"+-*\"+\"'*n\",100000+3,100000+3),\"-------------------+\"); }\n"+	// test 983
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"-------------------+\"+\"%'\"+\"+-*\"+\"'*n\",100000+3,100000+3),\"-------------------+\"); }\n"+	// test 997
   "mixed b() { return 100000+3; }",
 
 
 
 
-  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\",10),\"-------------------+\"); }\n"+	// test 984
+  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\",10),\"-------------------+\"); }\n"+	// test 998
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\" ,10),\"-------------------+\"); }\n"+	// test 985
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\" ,10),\"-------------------+\"); }\n"+	// test 999
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\"+\"-------------------+\",10),\"-------------------+\"); }\n"+	// test 986
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\"+\"-------------------+\",10),\"-------------------+\"); }\n"+	// test 1000
   "mixed b() { return 10; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\"+\"-------------------+\"+\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\",10,10),\"-------------------+\"); }\n"+	// test 987
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\"+\"-------------------+\"+\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\",10,10),\"-------------------+\"); }\n"+	// test 1001
   "mixed b() { return 10; }",
 
 
-  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\",10+1),\"-------------------+\"); }\n"+	// test 988
+  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\",10+1),\"-------------------+\"); }\n"+	// test 1002
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\" ,10+1),\"-------------------+\"); }\n"+	// test 989
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\" ,10+1),\"-------------------+\"); }\n"+	// test 1003
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\"+\"-------------------+\",10+1),\"-------------------+\"); }\n"+	// test 990
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\"+\"-------------------+\",10+1),\"-------------------+\"); }\n"+	// test 1004
   "mixed b() { return 10+1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\"+\"-------------------+\"+\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\",10+1,10+1),\"-------------------+\"); }\n"+	// test 991
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\"+\"-------------------+\"+\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\",10+1,10+1),\"-------------------+\"); }\n"+	// test 1005
   "mixed b() { return 10+1; }",
 
 
-  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\",10+2),\"-------------------+\"); }\n"+	// test 992
+  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\",10+2),\"-------------------+\"); }\n"+	// test 1006
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\" ,10+2),\"-------------------+\"); }\n"+	// test 993
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\" ,10+2),\"-------------------+\"); }\n"+	// test 1007
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\"+\"-------------------+\",10+2),\"-------------------+\"); }\n"+	// test 994
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\"+\"-------------------+\",10+2),\"-------------------+\"); }\n"+	// test 1008
   "mixed b() { return 10+2; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\"+\"-------------------+\"+\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\",10+2,10+2),\"-------------------+\"); }\n"+	// test 995
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\"+\"-------------------+\"+\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\",10+2,10+2),\"-------------------+\"); }\n"+	// test 1009
   "mixed b() { return 10+2; }",
 
 
-  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\",10+3),\"-------------------+\"); }\n"+	// test 996
+  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\",10+3),\"-------------------+\"); }\n"+	// test 1010
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\" ,10+3),\"-------------------+\"); }\n"+	// test 997
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\" ,10+3),\"-------------------+\"); }\n"+	// test 1011
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\"+\"-------------------+\",10+3),\"-------------------+\"); }\n"+	// test 998
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\"+\"-------------------+\",10+3),\"-------------------+\"); }\n"+	// test 1012
   "mixed b() { return 10+3; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\"+\"-------------------+\"+\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\",10+3,10+3),\"-------------------+\"); }\n"+	// test 999
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\"+\"-------------------+\"+\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\",10+3,10+3),\"-------------------+\"); }\n"+	// test 1013
   "mixed b() { return 10+3; }",
 
 
 
-  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\",1000),\"-------------------+\"); }\n"+	// test 1000
+  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\",1000),\"-------------------+\"); }\n"+	// test 1014
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\" ,1000),\"-------------------+\"); }\n"+	// test 1001
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\" ,1000),\"-------------------+\"); }\n"+	// test 1015
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\"+\"-------------------+\",1000),\"-------------------+\"); }\n"+	// test 1002
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\"+\"-------------------+\",1000),\"-------------------+\"); }\n"+	// test 1016
   "mixed b() { return 1000; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\"+\"-------------------+\"+\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\",1000,1000),\"-------------------+\"); }\n"+	// test 1003
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\"+\"-------------------+\"+\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\",1000,1000),\"-------------------+\"); }\n"+	// test 1017
   "mixed b() { return 1000; }",
 
 
-  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\",1000+1),\"-------------------+\"); }\n"+	// test 1004
+  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\",1000+1),\"-------------------+\"); }\n"+	// test 1018
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\" ,1000+1),\"-------------------+\"); }\n"+	// test 1005
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\" ,1000+1),\"-------------------+\"); }\n"+	// test 1019
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\"+\"-------------------+\",1000+1),\"-------------------+\"); }\n"+	// test 1006
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\"+\"-------------------+\",1000+1),\"-------------------+\"); }\n"+	// test 1020
   "mixed b() { return 1000+1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\"+\"-------------------+\"+\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\",1000+1,1000+1),\"-------------------+\"); }\n"+	// test 1007
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\"+\"-------------------+\"+\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\",1000+1,1000+1),\"-------------------+\"); }\n"+	// test 1021
   "mixed b() { return 1000+1; }",
 
 
-  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\",1000+2),\"-------------------+\"); }\n"+	// test 1008
+  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\",1000+2),\"-------------------+\"); }\n"+	// test 1022
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\" ,1000+2),\"-------------------+\"); }\n"+	// test 1009
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\" ,1000+2),\"-------------------+\"); }\n"+	// test 1023
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\"+\"-------------------+\",1000+2),\"-------------------+\"); }\n"+	// test 1010
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\"+\"-------------------+\",1000+2),\"-------------------+\"); }\n"+	// test 1024
   "mixed b() { return 1000+2; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\"+\"-------------------+\"+\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\",1000+2,1000+2),\"-------------------+\"); }\n"+	// test 1011
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\"+\"-------------------+\"+\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\",1000+2,1000+2),\"-------------------+\"); }\n"+	// test 1025
   "mixed b() { return 1000+2; }",
 
 
-  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\",1000+3),\"-------------------+\"); }\n"+	// test 1012
+  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\",1000+3),\"-------------------+\"); }\n"+	// test 1026
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\" ,1000+3),\"-------------------+\"); }\n"+	// test 1013
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\" ,1000+3),\"-------------------+\"); }\n"+	// test 1027
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\"+\"-------------------+\",1000+3),\"-------------------+\"); }\n"+	// test 1014
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\"+\"-------------------+\",1000+3),\"-------------------+\"); }\n"+	// test 1028
   "mixed b() { return 1000+3; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\"+\"-------------------+\"+\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\",1000+3,1000+3),\"-------------------+\"); }\n"+	// test 1015
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\"+\"-------------------+\"+\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\",1000+3,1000+3),\"-------------------+\"); }\n"+	// test 1029
   "mixed b() { return 1000+3; }",
 
 
 
-  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\",100000),\"-------------------+\"); }\n"+	// test 1016
+  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\",100000),\"-------------------+\"); }\n"+	// test 1030
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\" ,100000),\"-------------------+\"); }\n"+	// test 1017
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\" ,100000),\"-------------------+\"); }\n"+	// test 1031
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\"+\"-------------------+\",100000),\"-------------------+\"); }\n"+	// test 1018
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\"+\"-------------------+\",100000),\"-------------------+\"); }\n"+	// test 1032
   "mixed b() { return 100000; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\"+\"-------------------+\"+\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\",100000,100000),\"-------------------+\"); }\n"+	// test 1019
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\"+\"-------------------+\"+\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\",100000,100000),\"-------------------+\"); }\n"+	// test 1033
   "mixed b() { return 100000; }",
 
 
-  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\",100000+1),\"-------------------+\"); }\n"+	// test 1020
+  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\",100000+1),\"-------------------+\"); }\n"+	// test 1034
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\" ,100000+1),\"-------------------+\"); }\n"+	// test 1021
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\" ,100000+1),\"-------------------+\"); }\n"+	// test 1035
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\"+\"-------------------+\",100000+1),\"-------------------+\"); }\n"+	// test 1022
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\"+\"-------------------+\",100000+1),\"-------------------+\"); }\n"+	// test 1036
   "mixed b() { return 100000+1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\"+\"-------------------+\"+\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\",100000+1,100000+1),\"-------------------+\"); }\n"+	// test 1023
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\"+\"-------------------+\"+\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\",100000+1,100000+1),\"-------------------+\"); }\n"+	// test 1037
   "mixed b() { return 100000+1; }",
 
 
-  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\",100000+2),\"-------------------+\"); }\n"+	// test 1024
+  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\",100000+2),\"-------------------+\"); }\n"+	// test 1038
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\" ,100000+2),\"-------------------+\"); }\n"+	// test 1025
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\" ,100000+2),\"-------------------+\"); }\n"+	// test 1039
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\"+\"-------------------+\",100000+2),\"-------------------+\"); }\n"+	// test 1026
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\"+\"-------------------+\",100000+2),\"-------------------+\"); }\n"+	// test 1040
   "mixed b() { return 100000+2; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\"+\"-------------------+\"+\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\",100000+2,100000+2),\"-------------------+\"); }\n"+	// test 1027
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\"+\"-------------------+\"+\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\",100000+2,100000+2),\"-------------------+\"); }\n"+	// test 1041
   "mixed b() { return 100000+2; }",
 
 
-  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\",100000+3),\"-------------------+\"); }\n"+	// test 1028
+  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\",100000+3),\"-------------------+\"); }\n"+	// test 1042
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\" ,100000+3),\"-------------------+\"); }\n"+	// test 1029
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\" ,100000+3),\"-------------------+\"); }\n"+	// test 1043
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\"+\"-------------------+\",100000+3),\"-------------------+\"); }\n"+	// test 1030
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\"+\"-------------------+\",100000+3),\"-------------------+\"); }\n"+	// test 1044
   "mixed b() { return 100000+3; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\"+\"-------------------+\"+\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\",100000+3,100000+3),\"-------------------+\"); }\n"+	// test 1031
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\"+\"-------------------+\"+\"%'\"+(\"-------------------+\"[0..strlen(\"-------------------+\")-2])+\"'*n\",100000+3,100000+3),\"-------------------+\"); }\n"+	// test 1045
   "mixed b() { return 100000+3; }",
 
 
 
 
-  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\",10),\"-------------------+\"); }\n"+	// test 1032
+  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\",10),\"-------------------+\"); }\n"+	// test 1046
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\" ,10),\"-------------------+\"); }\n"+	// test 1033
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\" ,10),\"-------------------+\"); }\n"+	// test 1047
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\"+\"-------------------+\",10),\"-------------------+\"); }\n"+	// test 1034
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\"+\"-------------------+\",10),\"-------------------+\"); }\n"+	// test 1048
   "mixed b() { return 10; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\"+\"-------------------+\"+\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\",10,10),\"-------------------+\"); }\n"+	// test 1035
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\"+\"-------------------+\"+\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\",10,10),\"-------------------+\"); }\n"+	// test 1049
   "mixed b() { return 10; }",
 
 
-  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\",10+1),\"-------------------+\"); }\n"+	// test 1036
+  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\",10+1),\"-------------------+\"); }\n"+	// test 1050
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\" ,10+1),\"-------------------+\"); }\n"+	// test 1037
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\" ,10+1),\"-------------------+\"); }\n"+	// test 1051
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\"+\"-------------------+\",10+1),\"-------------------+\"); }\n"+	// test 1038
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\"+\"-------------------+\",10+1),\"-------------------+\"); }\n"+	// test 1052
   "mixed b() { return 10+1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\"+\"-------------------+\"+\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\",10+1,10+1),\"-------------------+\"); }\n"+	// test 1039
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\"+\"-------------------+\"+\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\",10+1,10+1),\"-------------------+\"); }\n"+	// test 1053
   "mixed b() { return 10+1; }",
 
 
-  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\",10+2),\"-------------------+\"); }\n"+	// test 1040
+  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\",10+2),\"-------------------+\"); }\n"+	// test 1054
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\" ,10+2),\"-------------------+\"); }\n"+	// test 1041
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\" ,10+2),\"-------------------+\"); }\n"+	// test 1055
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\"+\"-------------------+\",10+2),\"-------------------+\"); }\n"+	// test 1042
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\"+\"-------------------+\",10+2),\"-------------------+\"); }\n"+	// test 1056
   "mixed b() { return 10+2; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\"+\"-------------------+\"+\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\",10+2,10+2),\"-------------------+\"); }\n"+	// test 1043
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\"+\"-------------------+\"+\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\",10+2,10+2),\"-------------------+\"); }\n"+	// test 1057
   "mixed b() { return 10+2; }",
 
 
-  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\",10+3),\"-------------------+\"); }\n"+	// test 1044
+  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\",10+3),\"-------------------+\"); }\n"+	// test 1058
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\" ,10+3),\"-------------------+\"); }\n"+	// test 1045
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\" ,10+3),\"-------------------+\"); }\n"+	// test 1059
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\"+\"-------------------+\",10+3),\"-------------------+\"); }\n"+	// test 1046
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\"+\"-------------------+\",10+3),\"-------------------+\"); }\n"+	// test 1060
   "mixed b() { return 10+3; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\"+\"-------------------+\"+\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\",10+3,10+3),\"-------------------+\"); }\n"+	// test 1047
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\"+\"-------------------+\"+\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\",10+3,10+3),\"-------------------+\"); }\n"+	// test 1061
   "mixed b() { return 10+3; }",
 
 
 
-  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\",1000),\"-------------------+\"); }\n"+	// test 1048
+  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\",1000),\"-------------------+\"); }\n"+	// test 1062
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\" ,1000),\"-------------------+\"); }\n"+	// test 1049
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\" ,1000),\"-------------------+\"); }\n"+	// test 1063
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\"+\"-------------------+\",1000),\"-------------------+\"); }\n"+	// test 1050
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\"+\"-------------------+\",1000),\"-------------------+\"); }\n"+	// test 1064
   "mixed b() { return 1000; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\"+\"-------------------+\"+\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\",1000,1000),\"-------------------+\"); }\n"+	// test 1051
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\"+\"-------------------+\"+\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\",1000,1000),\"-------------------+\"); }\n"+	// test 1065
   "mixed b() { return 1000; }",
 
 
-  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\",1000+1),\"-------------------+\"); }\n"+	// test 1052
+  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\",1000+1),\"-------------------+\"); }\n"+	// test 1066
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\" ,1000+1),\"-------------------+\"); }\n"+	// test 1053
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\" ,1000+1),\"-------------------+\"); }\n"+	// test 1067
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\"+\"-------------------+\",1000+1),\"-------------------+\"); }\n"+	// test 1054
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\"+\"-------------------+\",1000+1),\"-------------------+\"); }\n"+	// test 1068
   "mixed b() { return 1000+1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\"+\"-------------------+\"+\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\",1000+1,1000+1),\"-------------------+\"); }\n"+	// test 1055
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\"+\"-------------------+\"+\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\",1000+1,1000+1),\"-------------------+\"); }\n"+	// test 1069
   "mixed b() { return 1000+1; }",
 
 
-  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\",1000+2),\"-------------------+\"); }\n"+	// test 1056
+  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\",1000+2),\"-------------------+\"); }\n"+	// test 1070
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\" ,1000+2),\"-------------------+\"); }\n"+	// test 1057
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\" ,1000+2),\"-------------------+\"); }\n"+	// test 1071
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\"+\"-------------------+\",1000+2),\"-------------------+\"); }\n"+	// test 1058
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\"+\"-------------------+\",1000+2),\"-------------------+\"); }\n"+	// test 1072
   "mixed b() { return 1000+2; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\"+\"-------------------+\"+\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\",1000+2,1000+2),\"-------------------+\"); }\n"+	// test 1059
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\"+\"-------------------+\"+\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\",1000+2,1000+2),\"-------------------+\"); }\n"+	// test 1073
   "mixed b() { return 1000+2; }",
 
 
-  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\",1000+3),\"-------------------+\"); }\n"+	// test 1060
+  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\",1000+3),\"-------------------+\"); }\n"+	// test 1074
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\" ,1000+3),\"-------------------+\"); }\n"+	// test 1061
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\" ,1000+3),\"-------------------+\"); }\n"+	// test 1075
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\"+\"-------------------+\",1000+3),\"-------------------+\"); }\n"+	// test 1062
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\"+\"-------------------+\",1000+3),\"-------------------+\"); }\n"+	// test 1076
   "mixed b() { return 1000+3; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\"+\"-------------------+\"+\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\",1000+3,1000+3),\"-------------------+\"); }\n"+	// test 1063
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\"+\"-------------------+\"+\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\",1000+3,1000+3),\"-------------------+\"); }\n"+	// test 1077
   "mixed b() { return 1000+3; }",
 
 
 
-  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\",100000),\"-------------------+\"); }\n"+	// test 1064
+  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\",100000),\"-------------------+\"); }\n"+	// test 1078
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\" ,100000),\"-------------------+\"); }\n"+	// test 1065
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\" ,100000),\"-------------------+\"); }\n"+	// test 1079
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\"+\"-------------------+\",100000),\"-------------------+\"); }\n"+	// test 1066
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\"+\"-------------------+\",100000),\"-------------------+\"); }\n"+	// test 1080
   "mixed b() { return 100000; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\"+\"-------------------+\"+\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\",100000,100000),\"-------------------+\"); }\n"+	// test 1067
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\"+\"-------------------+\"+\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\",100000,100000),\"-------------------+\"); }\n"+	// test 1081
   "mixed b() { return 100000; }",
 
 
-  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\",100000+1),\"-------------------+\"); }\n"+	// test 1068
+  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\",100000+1),\"-------------------+\"); }\n"+	// test 1082
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\" ,100000+1),\"-------------------+\"); }\n"+	// test 1069
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\" ,100000+1),\"-------------------+\"); }\n"+	// test 1083
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\"+\"-------------------+\",100000+1),\"-------------------+\"); }\n"+	// test 1070
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\"+\"-------------------+\",100000+1),\"-------------------+\"); }\n"+	// test 1084
   "mixed b() { return 100000+1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\"+\"-------------------+\"+\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\",100000+1,100000+1),\"-------------------+\"); }\n"+	// test 1071
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\"+\"-------------------+\"+\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\",100000+1,100000+1),\"-------------------+\"); }\n"+	// test 1085
   "mixed b() { return 100000+1; }",
 
 
-  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\",100000+2),\"-------------------+\"); }\n"+	// test 1072
+  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\",100000+2),\"-------------------+\"); }\n"+	// test 1086
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\" ,100000+2),\"-------------------+\"); }\n"+	// test 1073
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\" ,100000+2),\"-------------------+\"); }\n"+	// test 1087
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\"+\"-------------------+\",100000+2),\"-------------------+\"); }\n"+	// test 1074
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\"+\"-------------------+\",100000+2),\"-------------------+\"); }\n"+	// test 1088
   "mixed b() { return 100000+2; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\"+\"-------------------+\"+\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\",100000+2,100000+2),\"-------------------+\"); }\n"+	// test 1075
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\"+\"-------------------+\"+\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\",100000+2,100000+2),\"-------------------+\"); }\n"+	// test 1089
   "mixed b() { return 100000+2; }",
 
 
-  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\",100000+3),\"-------------------+\"); }\n"+	// test 1076
+  "=mixed a() { return search(sprintf(\"-------------------+\"+\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\",100000+3),\"-------------------+\"); }\n"+	// test 1090
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\" ,100000+3),\"-------------------+\"); }\n"+	// test 1077
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\" ,100000+3),\"-------------------+\"); }\n"+	// test 1091
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\"+\"-------------------+\",100000+3),\"-------------------+\"); }\n"+	// test 1078
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\"+\"-------------------+\",100000+3),\"-------------------+\"); }\n"+	// test 1092
   "mixed b() { return 100000+3; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\"+\"-------------------+\"+\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\",100000+3,100000+3),\"-------------------+\"); }\n"+	// test 1079
+  "=mixed a() { return search(sprintf(\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\"+\"-------------------+\"+\"%'\"+(\"-------------------+\"[1..0x7fffffff])+\"'*n\",100000+3,100000+3),\"-------------------+\"); }\n"+	// test 1093
   "mixed b() { return 100000+3; }",
 
 
 
 
 
-  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+\"+-*\"+\"'*n\",10),\"+-------------------\"); }\n"+	// test 1080
+  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+\"+-*\"+\"'*n\",10),\"+-------------------\"); }\n"+	// test 1094
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,10),\"+-------------------\"); }\n"+	// test 1081
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,10),\"+-------------------\"); }\n"+	// test 1095
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"+-------------------\",10),\"+-------------------\"); }\n"+	// test 1082
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"+-------------------\",10),\"+-------------------\"); }\n"+	// test 1096
   "mixed b() { return 10; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"+-------------------\"+\"%'\"+\"+-*\"+\"'*n\",10,10),\"+-------------------\"); }\n"+	// test 1083
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"+-------------------\"+\"%'\"+\"+-*\"+\"'*n\",10,10),\"+-------------------\"); }\n"+	// test 1097
   "mixed b() { return 10; }",
 
 
-  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+\"+-*\"+\"'*n\",10+1),\"+-------------------\"); }\n"+	// test 1084
+  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+\"+-*\"+\"'*n\",10+1),\"+-------------------\"); }\n"+	// test 1098
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,10+1),\"+-------------------\"); }\n"+	// test 1085
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,10+1),\"+-------------------\"); }\n"+	// test 1099
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"+-------------------\",10+1),\"+-------------------\"); }\n"+	// test 1086
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"+-------------------\",10+1),\"+-------------------\"); }\n"+	// test 1100
   "mixed b() { return 10+1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"+-------------------\"+\"%'\"+\"+-*\"+\"'*n\",10+1,10+1),\"+-------------------\"); }\n"+	// test 1087
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"+-------------------\"+\"%'\"+\"+-*\"+\"'*n\",10+1,10+1),\"+-------------------\"); }\n"+	// test 1101
   "mixed b() { return 10+1; }",
 
 
-  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+\"+-*\"+\"'*n\",10+2),\"+-------------------\"); }\n"+	// test 1088
+  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+\"+-*\"+\"'*n\",10+2),\"+-------------------\"); }\n"+	// test 1102
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,10+2),\"+-------------------\"); }\n"+	// test 1089
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,10+2),\"+-------------------\"); }\n"+	// test 1103
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"+-------------------\",10+2),\"+-------------------\"); }\n"+	// test 1090
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"+-------------------\",10+2),\"+-------------------\"); }\n"+	// test 1104
   "mixed b() { return 10+2; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"+-------------------\"+\"%'\"+\"+-*\"+\"'*n\",10+2,10+2),\"+-------------------\"); }\n"+	// test 1091
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"+-------------------\"+\"%'\"+\"+-*\"+\"'*n\",10+2,10+2),\"+-------------------\"); }\n"+	// test 1105
   "mixed b() { return 10+2; }",
 
 
-  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+\"+-*\"+\"'*n\",10+3),\"+-------------------\"); }\n"+	// test 1092
+  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+\"+-*\"+\"'*n\",10+3),\"+-------------------\"); }\n"+	// test 1106
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,10+3),\"+-------------------\"); }\n"+	// test 1093
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,10+3),\"+-------------------\"); }\n"+	// test 1107
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"+-------------------\",10+3),\"+-------------------\"); }\n"+	// test 1094
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"+-------------------\",10+3),\"+-------------------\"); }\n"+	// test 1108
   "mixed b() { return 10+3; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"+-------------------\"+\"%'\"+\"+-*\"+\"'*n\",10+3,10+3),\"+-------------------\"); }\n"+	// test 1095
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"+-------------------\"+\"%'\"+\"+-*\"+\"'*n\",10+3,10+3),\"+-------------------\"); }\n"+	// test 1109
   "mixed b() { return 10+3; }",
 
 
 
-  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+\"+-*\"+\"'*n\",1000),\"+-------------------\"); }\n"+	// test 1096
+  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+\"+-*\"+\"'*n\",1000),\"+-------------------\"); }\n"+	// test 1110
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,1000),\"+-------------------\"); }\n"+	// test 1097
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,1000),\"+-------------------\"); }\n"+	// test 1111
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"+-------------------\",1000),\"+-------------------\"); }\n"+	// test 1098
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"+-------------------\",1000),\"+-------------------\"); }\n"+	// test 1112
   "mixed b() { return 1000; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"+-------------------\"+\"%'\"+\"+-*\"+\"'*n\",1000,1000),\"+-------------------\"); }\n"+	// test 1099
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"+-------------------\"+\"%'\"+\"+-*\"+\"'*n\",1000,1000),\"+-------------------\"); }\n"+	// test 1113
   "mixed b() { return 1000; }",
 
 
-  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+\"+-*\"+\"'*n\",1000+1),\"+-------------------\"); }\n"+	// test 1100
+  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+\"+-*\"+\"'*n\",1000+1),\"+-------------------\"); }\n"+	// test 1114
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,1000+1),\"+-------------------\"); }\n"+	// test 1101
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,1000+1),\"+-------------------\"); }\n"+	// test 1115
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"+-------------------\",1000+1),\"+-------------------\"); }\n"+	// test 1102
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"+-------------------\",1000+1),\"+-------------------\"); }\n"+	// test 1116
   "mixed b() { return 1000+1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"+-------------------\"+\"%'\"+\"+-*\"+\"'*n\",1000+1,1000+1),\"+-------------------\"); }\n"+	// test 1103
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"+-------------------\"+\"%'\"+\"+-*\"+\"'*n\",1000+1,1000+1),\"+-------------------\"); }\n"+	// test 1117
   "mixed b() { return 1000+1; }",
 
 
-  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+\"+-*\"+\"'*n\",1000+2),\"+-------------------\"); }\n"+	// test 1104
+  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+\"+-*\"+\"'*n\",1000+2),\"+-------------------\"); }\n"+	// test 1118
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,1000+2),\"+-------------------\"); }\n"+	// test 1105
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,1000+2),\"+-------------------\"); }\n"+	// test 1119
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"+-------------------\",1000+2),\"+-------------------\"); }\n"+	// test 1106
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"+-------------------\",1000+2),\"+-------------------\"); }\n"+	// test 1120
   "mixed b() { return 1000+2; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"+-------------------\"+\"%'\"+\"+-*\"+\"'*n\",1000+2,1000+2),\"+-------------------\"); }\n"+	// test 1107
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"+-------------------\"+\"%'\"+\"+-*\"+\"'*n\",1000+2,1000+2),\"+-------------------\"); }\n"+	// test 1121
   "mixed b() { return 1000+2; }",
 
 
-  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+\"+-*\"+\"'*n\",1000+3),\"+-------------------\"); }\n"+	// test 1108
+  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+\"+-*\"+\"'*n\",1000+3),\"+-------------------\"); }\n"+	// test 1122
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,1000+3),\"+-------------------\"); }\n"+	// test 1109
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,1000+3),\"+-------------------\"); }\n"+	// test 1123
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"+-------------------\",1000+3),\"+-------------------\"); }\n"+	// test 1110
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"+-------------------\",1000+3),\"+-------------------\"); }\n"+	// test 1124
   "mixed b() { return 1000+3; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"+-------------------\"+\"%'\"+\"+-*\"+\"'*n\",1000+3,1000+3),\"+-------------------\"); }\n"+	// test 1111
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"+-------------------\"+\"%'\"+\"+-*\"+\"'*n\",1000+3,1000+3),\"+-------------------\"); }\n"+	// test 1125
   "mixed b() { return 1000+3; }",
 
 
 
-  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+\"+-*\"+\"'*n\",100000),\"+-------------------\"); }\n"+	// test 1112
+  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+\"+-*\"+\"'*n\",100000),\"+-------------------\"); }\n"+	// test 1126
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,100000),\"+-------------------\"); }\n"+	// test 1113
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,100000),\"+-------------------\"); }\n"+	// test 1127
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"+-------------------\",100000),\"+-------------------\"); }\n"+	// test 1114
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"+-------------------\",100000),\"+-------------------\"); }\n"+	// test 1128
   "mixed b() { return 100000; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"+-------------------\"+\"%'\"+\"+-*\"+\"'*n\",100000,100000),\"+-------------------\"); }\n"+	// test 1115
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"+-------------------\"+\"%'\"+\"+-*\"+\"'*n\",100000,100000),\"+-------------------\"); }\n"+	// test 1129
   "mixed b() { return 100000; }",
 
 
-  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+\"+-*\"+\"'*n\",100000+1),\"+-------------------\"); }\n"+	// test 1116
+  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+\"+-*\"+\"'*n\",100000+1),\"+-------------------\"); }\n"+	// test 1130
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,100000+1),\"+-------------------\"); }\n"+	// test 1117
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,100000+1),\"+-------------------\"); }\n"+	// test 1131
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"+-------------------\",100000+1),\"+-------------------\"); }\n"+	// test 1118
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"+-------------------\",100000+1),\"+-------------------\"); }\n"+	// test 1132
   "mixed b() { return 100000+1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"+-------------------\"+\"%'\"+\"+-*\"+\"'*n\",100000+1,100000+1),\"+-------------------\"); }\n"+	// test 1119
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"+-------------------\"+\"%'\"+\"+-*\"+\"'*n\",100000+1,100000+1),\"+-------------------\"); }\n"+	// test 1133
   "mixed b() { return 100000+1; }",
 
 
-  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+\"+-*\"+\"'*n\",100000+2),\"+-------------------\"); }\n"+	// test 1120
+  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+\"+-*\"+\"'*n\",100000+2),\"+-------------------\"); }\n"+	// test 1134
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,100000+2),\"+-------------------\"); }\n"+	// test 1121
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,100000+2),\"+-------------------\"); }\n"+	// test 1135
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"+-------------------\",100000+2),\"+-------------------\"); }\n"+	// test 1122
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"+-------------------\",100000+2),\"+-------------------\"); }\n"+	// test 1136
   "mixed b() { return 100000+2; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"+-------------------\"+\"%'\"+\"+-*\"+\"'*n\",100000+2,100000+2),\"+-------------------\"); }\n"+	// test 1123
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"+-------------------\"+\"%'\"+\"+-*\"+\"'*n\",100000+2,100000+2),\"+-------------------\"); }\n"+	// test 1137
   "mixed b() { return 100000+2; }",
 
 
-  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+\"+-*\"+\"'*n\",100000+3),\"+-------------------\"); }\n"+	// test 1124
+  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+\"+-*\"+\"'*n\",100000+3),\"+-------------------\"); }\n"+	// test 1138
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,100000+3),\"+-------------------\"); }\n"+	// test 1125
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,100000+3),\"+-------------------\"); }\n"+	// test 1139
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"+-------------------\",100000+3),\"+-------------------\"); }\n"+	// test 1126
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"+-------------------\",100000+3),\"+-------------------\"); }\n"+	// test 1140
   "mixed b() { return 100000+3; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"+-------------------\"+\"%'\"+\"+-*\"+\"'*n\",100000+3,100000+3),\"+-------------------\"); }\n"+	// test 1127
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+\"+-------------------\"+\"%'\"+\"+-*\"+\"'*n\",100000+3,100000+3),\"+-------------------\"); }\n"+	// test 1141
   "mixed b() { return 100000+3; }",
 
 
 
 
-  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\",10),\"+-------------------\"); }\n"+	// test 1128
+  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\",10),\"+-------------------\"); }\n"+	// test 1142
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\" ,10),\"+-------------------\"); }\n"+	// test 1129
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\" ,10),\"+-------------------\"); }\n"+	// test 1143
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\"+\"+-------------------\",10),\"+-------------------\"); }\n"+	// test 1130
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\"+\"+-------------------\",10),\"+-------------------\"); }\n"+	// test 1144
   "mixed b() { return 10; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\"+\"+-------------------\"+\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\",10,10),\"+-------------------\"); }\n"+	// test 1131
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\"+\"+-------------------\"+\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\",10,10),\"+-------------------\"); }\n"+	// test 1145
   "mixed b() { return 10; }",
 
 
-  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\",10+1),\"+-------------------\"); }\n"+	// test 1132
+  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\",10+1),\"+-------------------\"); }\n"+	// test 1146
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\" ,10+1),\"+-------------------\"); }\n"+	// test 1133
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\" ,10+1),\"+-------------------\"); }\n"+	// test 1147
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\"+\"+-------------------\",10+1),\"+-------------------\"); }\n"+	// test 1134
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\"+\"+-------------------\",10+1),\"+-------------------\"); }\n"+	// test 1148
   "mixed b() { return 10+1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\"+\"+-------------------\"+\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\",10+1,10+1),\"+-------------------\"); }\n"+	// test 1135
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\"+\"+-------------------\"+\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\",10+1,10+1),\"+-------------------\"); }\n"+	// test 1149
   "mixed b() { return 10+1; }",
 
 
-  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\",10+2),\"+-------------------\"); }\n"+	// test 1136
+  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\",10+2),\"+-------------------\"); }\n"+	// test 1150
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\" ,10+2),\"+-------------------\"); }\n"+	// test 1137
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\" ,10+2),\"+-------------------\"); }\n"+	// test 1151
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\"+\"+-------------------\",10+2),\"+-------------------\"); }\n"+	// test 1138
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\"+\"+-------------------\",10+2),\"+-------------------\"); }\n"+	// test 1152
   "mixed b() { return 10+2; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\"+\"+-------------------\"+\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\",10+2,10+2),\"+-------------------\"); }\n"+	// test 1139
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\"+\"+-------------------\"+\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\",10+2,10+2),\"+-------------------\"); }\n"+	// test 1153
   "mixed b() { return 10+2; }",
 
 
-  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\",10+3),\"+-------------------\"); }\n"+	// test 1140
+  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\",10+3),\"+-------------------\"); }\n"+	// test 1154
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\" ,10+3),\"+-------------------\"); }\n"+	// test 1141
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\" ,10+3),\"+-------------------\"); }\n"+	// test 1155
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\"+\"+-------------------\",10+3),\"+-------------------\"); }\n"+	// test 1142
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\"+\"+-------------------\",10+3),\"+-------------------\"); }\n"+	// test 1156
   "mixed b() { return 10+3; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\"+\"+-------------------\"+\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\",10+3,10+3),\"+-------------------\"); }\n"+	// test 1143
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\"+\"+-------------------\"+\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\",10+3,10+3),\"+-------------------\"); }\n"+	// test 1157
   "mixed b() { return 10+3; }",
 
 
 
-  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\",1000),\"+-------------------\"); }\n"+	// test 1144
+  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\",1000),\"+-------------------\"); }\n"+	// test 1158
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\" ,1000),\"+-------------------\"); }\n"+	// test 1145
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\" ,1000),\"+-------------------\"); }\n"+	// test 1159
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\"+\"+-------------------\",1000),\"+-------------------\"); }\n"+	// test 1146
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\"+\"+-------------------\",1000),\"+-------------------\"); }\n"+	// test 1160
   "mixed b() { return 1000; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\"+\"+-------------------\"+\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\",1000,1000),\"+-------------------\"); }\n"+	// test 1147
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\"+\"+-------------------\"+\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\",1000,1000),\"+-------------------\"); }\n"+	// test 1161
   "mixed b() { return 1000; }",
 
 
-  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\",1000+1),\"+-------------------\"); }\n"+	// test 1148
+  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\",1000+1),\"+-------------------\"); }\n"+	// test 1162
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\" ,1000+1),\"+-------------------\"); }\n"+	// test 1149
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\" ,1000+1),\"+-------------------\"); }\n"+	// test 1163
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\"+\"+-------------------\",1000+1),\"+-------------------\"); }\n"+	// test 1150
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\"+\"+-------------------\",1000+1),\"+-------------------\"); }\n"+	// test 1164
   "mixed b() { return 1000+1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\"+\"+-------------------\"+\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\",1000+1,1000+1),\"+-------------------\"); }\n"+	// test 1151
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\"+\"+-------------------\"+\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\",1000+1,1000+1),\"+-------------------\"); }\n"+	// test 1165
   "mixed b() { return 1000+1; }",
 
 
-  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\",1000+2),\"+-------------------\"); }\n"+	// test 1152
+  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\",1000+2),\"+-------------------\"); }\n"+	// test 1166
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\" ,1000+2),\"+-------------------\"); }\n"+	// test 1153
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\" ,1000+2),\"+-------------------\"); }\n"+	// test 1167
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\"+\"+-------------------\",1000+2),\"+-------------------\"); }\n"+	// test 1154
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\"+\"+-------------------\",1000+2),\"+-------------------\"); }\n"+	// test 1168
   "mixed b() { return 1000+2; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\"+\"+-------------------\"+\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\",1000+2,1000+2),\"+-------------------\"); }\n"+	// test 1155
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\"+\"+-------------------\"+\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\",1000+2,1000+2),\"+-------------------\"); }\n"+	// test 1169
   "mixed b() { return 1000+2; }",
 
 
-  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\",1000+3),\"+-------------------\"); }\n"+	// test 1156
+  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\",1000+3),\"+-------------------\"); }\n"+	// test 1170
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\" ,1000+3),\"+-------------------\"); }\n"+	// test 1157
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\" ,1000+3),\"+-------------------\"); }\n"+	// test 1171
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\"+\"+-------------------\",1000+3),\"+-------------------\"); }\n"+	// test 1158
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\"+\"+-------------------\",1000+3),\"+-------------------\"); }\n"+	// test 1172
   "mixed b() { return 1000+3; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\"+\"+-------------------\"+\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\",1000+3,1000+3),\"+-------------------\"); }\n"+	// test 1159
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\"+\"+-------------------\"+\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\",1000+3,1000+3),\"+-------------------\"); }\n"+	// test 1173
   "mixed b() { return 1000+3; }",
 
 
 
-  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\",100000),\"+-------------------\"); }\n"+	// test 1160
+  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\",100000),\"+-------------------\"); }\n"+	// test 1174
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\" ,100000),\"+-------------------\"); }\n"+	// test 1161
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\" ,100000),\"+-------------------\"); }\n"+	// test 1175
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\"+\"+-------------------\",100000),\"+-------------------\"); }\n"+	// test 1162
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\"+\"+-------------------\",100000),\"+-------------------\"); }\n"+	// test 1176
   "mixed b() { return 100000; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\"+\"+-------------------\"+\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\",100000,100000),\"+-------------------\"); }\n"+	// test 1163
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\"+\"+-------------------\"+\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\",100000,100000),\"+-------------------\"); }\n"+	// test 1177
   "mixed b() { return 100000; }",
 
 
-  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\",100000+1),\"+-------------------\"); }\n"+	// test 1164
+  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\",100000+1),\"+-------------------\"); }\n"+	// test 1178
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\" ,100000+1),\"+-------------------\"); }\n"+	// test 1165
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\" ,100000+1),\"+-------------------\"); }\n"+	// test 1179
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\"+\"+-------------------\",100000+1),\"+-------------------\"); }\n"+	// test 1166
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\"+\"+-------------------\",100000+1),\"+-------------------\"); }\n"+	// test 1180
   "mixed b() { return 100000+1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\"+\"+-------------------\"+\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\",100000+1,100000+1),\"+-------------------\"); }\n"+	// test 1167
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\"+\"+-------------------\"+\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\",100000+1,100000+1),\"+-------------------\"); }\n"+	// test 1181
   "mixed b() { return 100000+1; }",
 
 
-  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\",100000+2),\"+-------------------\"); }\n"+	// test 1168
+  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\",100000+2),\"+-------------------\"); }\n"+	// test 1182
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\" ,100000+2),\"+-------------------\"); }\n"+	// test 1169
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\" ,100000+2),\"+-------------------\"); }\n"+	// test 1183
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\"+\"+-------------------\",100000+2),\"+-------------------\"); }\n"+	// test 1170
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\"+\"+-------------------\",100000+2),\"+-------------------\"); }\n"+	// test 1184
   "mixed b() { return 100000+2; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\"+\"+-------------------\"+\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\",100000+2,100000+2),\"+-------------------\"); }\n"+	// test 1171
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\"+\"+-------------------\"+\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\",100000+2,100000+2),\"+-------------------\"); }\n"+	// test 1185
   "mixed b() { return 100000+2; }",
 
 
-  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\",100000+3),\"+-------------------\"); }\n"+	// test 1172
+  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\",100000+3),\"+-------------------\"); }\n"+	// test 1186
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\" ,100000+3),\"+-------------------\"); }\n"+	// test 1173
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\" ,100000+3),\"+-------------------\"); }\n"+	// test 1187
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\"+\"+-------------------\",100000+3),\"+-------------------\"); }\n"+	// test 1174
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\"+\"+-------------------\",100000+3),\"+-------------------\"); }\n"+	// test 1188
   "mixed b() { return 100000+3; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\"+\"+-------------------\"+\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\",100000+3,100000+3),\"+-------------------\"); }\n"+	// test 1175
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\"+\"+-------------------\"+\"%'\"+(\"+-------------------\"[0..strlen(\"+-------------------\")-2])+\"'*n\",100000+3,100000+3),\"+-------------------\"); }\n"+	// test 1189
   "mixed b() { return 100000+3; }",
 
 
 
 
-  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\",10),\"+-------------------\"); }\n"+	// test 1176
+  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\",10),\"+-------------------\"); }\n"+	// test 1190
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\" ,10),\"+-------------------\"); }\n"+	// test 1177
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\" ,10),\"+-------------------\"); }\n"+	// test 1191
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\"+\"+-------------------\",10),\"+-------------------\"); }\n"+	// test 1178
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\"+\"+-------------------\",10),\"+-------------------\"); }\n"+	// test 1192
   "mixed b() { return 10; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\"+\"+-------------------\"+\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\",10,10),\"+-------------------\"); }\n"+	// test 1179
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\"+\"+-------------------\"+\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\",10,10),\"+-------------------\"); }\n"+	// test 1193
   "mixed b() { return 10; }",
 
 
-  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\",10+1),\"+-------------------\"); }\n"+	// test 1180
+  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\",10+1),\"+-------------------\"); }\n"+	// test 1194
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\" ,10+1),\"+-------------------\"); }\n"+	// test 1181
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\" ,10+1),\"+-------------------\"); }\n"+	// test 1195
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\"+\"+-------------------\",10+1),\"+-------------------\"); }\n"+	// test 1182
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\"+\"+-------------------\",10+1),\"+-------------------\"); }\n"+	// test 1196
   "mixed b() { return 10+1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\"+\"+-------------------\"+\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\",10+1,10+1),\"+-------------------\"); }\n"+	// test 1183
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\"+\"+-------------------\"+\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\",10+1,10+1),\"+-------------------\"); }\n"+	// test 1197
   "mixed b() { return 10+1; }",
 
 
-  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\",10+2),\"+-------------------\"); }\n"+	// test 1184
+  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\",10+2),\"+-------------------\"); }\n"+	// test 1198
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\" ,10+2),\"+-------------------\"); }\n"+	// test 1185
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\" ,10+2),\"+-------------------\"); }\n"+	// test 1199
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\"+\"+-------------------\",10+2),\"+-------------------\"); }\n"+	// test 1186
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\"+\"+-------------------\",10+2),\"+-------------------\"); }\n"+	// test 1200
   "mixed b() { return 10+2; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\"+\"+-------------------\"+\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\",10+2,10+2),\"+-------------------\"); }\n"+	// test 1187
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\"+\"+-------------------\"+\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\",10+2,10+2),\"+-------------------\"); }\n"+	// test 1201
   "mixed b() { return 10+2; }",
 
 
-  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\",10+3),\"+-------------------\"); }\n"+	// test 1188
+  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\",10+3),\"+-------------------\"); }\n"+	// test 1202
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\" ,10+3),\"+-------------------\"); }\n"+	// test 1189
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\" ,10+3),\"+-------------------\"); }\n"+	// test 1203
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\"+\"+-------------------\",10+3),\"+-------------------\"); }\n"+	// test 1190
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\"+\"+-------------------\",10+3),\"+-------------------\"); }\n"+	// test 1204
   "mixed b() { return 10+3; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\"+\"+-------------------\"+\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\",10+3,10+3),\"+-------------------\"); }\n"+	// test 1191
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\"+\"+-------------------\"+\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\",10+3,10+3),\"+-------------------\"); }\n"+	// test 1205
   "mixed b() { return 10+3; }",
 
 
 
-  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\",1000),\"+-------------------\"); }\n"+	// test 1192
+  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\",1000),\"+-------------------\"); }\n"+	// test 1206
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\" ,1000),\"+-------------------\"); }\n"+	// test 1193
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\" ,1000),\"+-------------------\"); }\n"+	// test 1207
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\"+\"+-------------------\",1000),\"+-------------------\"); }\n"+	// test 1194
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\"+\"+-------------------\",1000),\"+-------------------\"); }\n"+	// test 1208
   "mixed b() { return 1000; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\"+\"+-------------------\"+\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\",1000,1000),\"+-------------------\"); }\n"+	// test 1195
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\"+\"+-------------------\"+\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\",1000,1000),\"+-------------------\"); }\n"+	// test 1209
   "mixed b() { return 1000; }",
 
 
-  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\",1000+1),\"+-------------------\"); }\n"+	// test 1196
+  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\",1000+1),\"+-------------------\"); }\n"+	// test 1210
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\" ,1000+1),\"+-------------------\"); }\n"+	// test 1197
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\" ,1000+1),\"+-------------------\"); }\n"+	// test 1211
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\"+\"+-------------------\",1000+1),\"+-------------------\"); }\n"+	// test 1198
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\"+\"+-------------------\",1000+1),\"+-------------------\"); }\n"+	// test 1212
   "mixed b() { return 1000+1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\"+\"+-------------------\"+\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\",1000+1,1000+1),\"+-------------------\"); }\n"+	// test 1199
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\"+\"+-------------------\"+\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\",1000+1,1000+1),\"+-------------------\"); }\n"+	// test 1213
   "mixed b() { return 1000+1; }",
 
 
-  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\",1000+2),\"+-------------------\"); }\n"+	// test 1200
+  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\",1000+2),\"+-------------------\"); }\n"+	// test 1214
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\" ,1000+2),\"+-------------------\"); }\n"+	// test 1201
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\" ,1000+2),\"+-------------------\"); }\n"+	// test 1215
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\"+\"+-------------------\",1000+2),\"+-------------------\"); }\n"+	// test 1202
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\"+\"+-------------------\",1000+2),\"+-------------------\"); }\n"+	// test 1216
   "mixed b() { return 1000+2; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\"+\"+-------------------\"+\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\",1000+2,1000+2),\"+-------------------\"); }\n"+	// test 1203
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\"+\"+-------------------\"+\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\",1000+2,1000+2),\"+-------------------\"); }\n"+	// test 1217
   "mixed b() { return 1000+2; }",
 
 
-  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\",1000+3),\"+-------------------\"); }\n"+	// test 1204
+  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\",1000+3),\"+-------------------\"); }\n"+	// test 1218
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\" ,1000+3),\"+-------------------\"); }\n"+	// test 1205
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\" ,1000+3),\"+-------------------\"); }\n"+	// test 1219
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\"+\"+-------------------\",1000+3),\"+-------------------\"); }\n"+	// test 1206
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\"+\"+-------------------\",1000+3),\"+-------------------\"); }\n"+	// test 1220
   "mixed b() { return 1000+3; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\"+\"+-------------------\"+\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\",1000+3,1000+3),\"+-------------------\"); }\n"+	// test 1207
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\"+\"+-------------------\"+\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\",1000+3,1000+3),\"+-------------------\"); }\n"+	// test 1221
   "mixed b() { return 1000+3; }",
 
 
 
-  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\",100000),\"+-------------------\"); }\n"+	// test 1208
+  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\",100000),\"+-------------------\"); }\n"+	// test 1222
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\" ,100000),\"+-------------------\"); }\n"+	// test 1209
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\" ,100000),\"+-------------------\"); }\n"+	// test 1223
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\"+\"+-------------------\",100000),\"+-------------------\"); }\n"+	// test 1210
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\"+\"+-------------------\",100000),\"+-------------------\"); }\n"+	// test 1224
   "mixed b() { return 100000; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\"+\"+-------------------\"+\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\",100000,100000),\"+-------------------\"); }\n"+	// test 1211
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\"+\"+-------------------\"+\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\",100000,100000),\"+-------------------\"); }\n"+	// test 1225
   "mixed b() { return 100000; }",
 
 
-  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\",100000+1),\"+-------------------\"); }\n"+	// test 1212
+  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\",100000+1),\"+-------------------\"); }\n"+	// test 1226
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\" ,100000+1),\"+-------------------\"); }\n"+	// test 1213
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\" ,100000+1),\"+-------------------\"); }\n"+	// test 1227
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\"+\"+-------------------\",100000+1),\"+-------------------\"); }\n"+	// test 1214
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\"+\"+-------------------\",100000+1),\"+-------------------\"); }\n"+	// test 1228
   "mixed b() { return 100000+1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\"+\"+-------------------\"+\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\",100000+1,100000+1),\"+-------------------\"); }\n"+	// test 1215
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\"+\"+-------------------\"+\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\",100000+1,100000+1),\"+-------------------\"); }\n"+	// test 1229
   "mixed b() { return 100000+1; }",
 
 
-  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\",100000+2),\"+-------------------\"); }\n"+	// test 1216
+  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\",100000+2),\"+-------------------\"); }\n"+	// test 1230
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\" ,100000+2),\"+-------------------\"); }\n"+	// test 1217
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\" ,100000+2),\"+-------------------\"); }\n"+	// test 1231
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\"+\"+-------------------\",100000+2),\"+-------------------\"); }\n"+	// test 1218
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\"+\"+-------------------\",100000+2),\"+-------------------\"); }\n"+	// test 1232
   "mixed b() { return 100000+2; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\"+\"+-------------------\"+\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\",100000+2,100000+2),\"+-------------------\"); }\n"+	// test 1219
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\"+\"+-------------------\"+\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\",100000+2,100000+2),\"+-------------------\"); }\n"+	// test 1233
   "mixed b() { return 100000+2; }",
 
 
-  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\",100000+3),\"+-------------------\"); }\n"+	// test 1220
+  "=mixed a() { return search(sprintf(\"+-------------------\"+\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\",100000+3),\"+-------------------\"); }\n"+	// test 1234
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\" ,100000+3),\"+-------------------\"); }\n"+	// test 1221
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\" ,100000+3),\"+-------------------\"); }\n"+	// test 1235
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\"+\"+-------------------\",100000+3),\"+-------------------\"); }\n"+	// test 1222
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\"+\"+-------------------\",100000+3),\"+-------------------\"); }\n"+	// test 1236
   "mixed b() { return 100000+3; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\"+\"+-------------------\"+\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\",100000+3,100000+3),\"+-------------------\"); }\n"+	// test 1223
+  "=mixed a() { return search(sprintf(\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\"+\"+-------------------\"+\"%'\"+(\"+-------------------\"[1..0x7fffffff])+\"'*n\",100000+3,100000+3),\"+-------------------\"); }\n"+	// test 1237
   "mixed b() { return 100000+3; }",
 
 
 
 
 
-  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+\"+-*\"+\"'*n\",10),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1224
+  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+\"+-*\"+\"'*n\",10),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1238
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,10),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1225
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,10),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1239
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),10),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1226
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),10),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1240
   "mixed b() { return 10; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+\"+-*\"+\"'*n\",10,10),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1227
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+\"+-*\"+\"'*n\",10,10),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1241
   "mixed b() { return 10; }",
 
 
-  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+\"+-*\"+\"'*n\",10+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1228
+  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+\"+-*\"+\"'*n\",10+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1242
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,10+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1229
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,10+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1243
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),10+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1230
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),10+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1244
   "mixed b() { return 10+1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+\"+-*\"+\"'*n\",10+1,10+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1231
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+\"+-*\"+\"'*n\",10+1,10+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1245
   "mixed b() { return 10+1; }",
 
 
-  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+\"+-*\"+\"'*n\",10+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1232
+  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+\"+-*\"+\"'*n\",10+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1246
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,10+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1233
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,10+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1247
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),10+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1234
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),10+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1248
   "mixed b() { return 10+2; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+\"+-*\"+\"'*n\",10+2,10+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1235
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+\"+-*\"+\"'*n\",10+2,10+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1249
   "mixed b() { return 10+2; }",
 
 
-  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+\"+-*\"+\"'*n\",10+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1236
+  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+\"+-*\"+\"'*n\",10+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1250
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,10+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1237
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,10+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1251
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),10+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1238
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),10+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1252
   "mixed b() { return 10+3; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+\"+-*\"+\"'*n\",10+3,10+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1239
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+\"+-*\"+\"'*n\",10+3,10+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1253
   "mixed b() { return 10+3; }",
 
 
 
-  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+\"+-*\"+\"'*n\",1000),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1240
+  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+\"+-*\"+\"'*n\",1000),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1254
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,1000),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1241
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,1000),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1255
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),1000),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1242
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),1000),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1256
   "mixed b() { return 1000; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+\"+-*\"+\"'*n\",1000,1000),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1243
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+\"+-*\"+\"'*n\",1000,1000),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1257
   "mixed b() { return 1000; }",
 
 
-  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+\"+-*\"+\"'*n\",1000+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1244
+  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+\"+-*\"+\"'*n\",1000+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1258
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,1000+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1245
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,1000+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1259
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),1000+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1246
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),1000+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1260
   "mixed b() { return 1000+1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+\"+-*\"+\"'*n\",1000+1,1000+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1247
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+\"+-*\"+\"'*n\",1000+1,1000+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1261
   "mixed b() { return 1000+1; }",
 
 
-  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+\"+-*\"+\"'*n\",1000+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1248
+  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+\"+-*\"+\"'*n\",1000+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1262
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,1000+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1249
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,1000+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1263
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),1000+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1250
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),1000+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1264
   "mixed b() { return 1000+2; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+\"+-*\"+\"'*n\",1000+2,1000+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1251
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+\"+-*\"+\"'*n\",1000+2,1000+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1265
   "mixed b() { return 1000+2; }",
 
 
-  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+\"+-*\"+\"'*n\",1000+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1252
+  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+\"+-*\"+\"'*n\",1000+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1266
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,1000+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1253
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,1000+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1267
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),1000+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1254
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),1000+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1268
   "mixed b() { return 1000+3; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+\"+-*\"+\"'*n\",1000+3,1000+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1255
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+\"+-*\"+\"'*n\",1000+3,1000+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1269
   "mixed b() { return 1000+3; }",
 
 
 
-  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+\"+-*\"+\"'*n\",100000),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1256
+  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+\"+-*\"+\"'*n\",100000),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1270
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,100000),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1257
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,100000),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1271
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),100000),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1258
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),100000),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1272
   "mixed b() { return 100000; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+\"+-*\"+\"'*n\",100000,100000),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1259
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+\"+-*\"+\"'*n\",100000,100000),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1273
   "mixed b() { return 100000; }",
 
 
-  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+\"+-*\"+\"'*n\",100000+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1260
+  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+\"+-*\"+\"'*n\",100000+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1274
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,100000+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1261
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,100000+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1275
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),100000+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1262
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),100000+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1276
   "mixed b() { return 100000+1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+\"+-*\"+\"'*n\",100000+1,100000+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1263
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+\"+-*\"+\"'*n\",100000+1,100000+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1277
   "mixed b() { return 100000+1; }",
 
 
-  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+\"+-*\"+\"'*n\",100000+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1264
+  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+\"+-*\"+\"'*n\",100000+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1278
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,100000+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1265
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,100000+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1279
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),100000+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1266
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),100000+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1280
   "mixed b() { return 100000+2; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+\"+-*\"+\"'*n\",100000+2,100000+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1267
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+\"+-*\"+\"'*n\",100000+2,100000+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1281
   "mixed b() { return 100000+2; }",
 
 
-  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+\"+-*\"+\"'*n\",100000+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1268
+  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+\"+-*\"+\"'*n\",100000+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1282
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,100000+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1269
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\" ,100000+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1283
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),100000+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1270
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),100000+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1284
   "mixed b() { return 100000+3; }",
-  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+\"+-*\"+\"'*n\",100000+3,100000+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1271
+  "=mixed a() { return search(sprintf(\"%'\"+\"+-*\"+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+\"+-*\"+\"'*n\",100000+3,100000+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1285
   "mixed b() { return 100000+3; }",
 
 
 
 
-  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\",10),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1272
+  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\",10),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1286
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\" ,10),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1273
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\" ,10),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1287
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),10),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1274
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),10),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1288
   "mixed b() { return 10; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\",10,10),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1275
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\",10,10),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1289
   "mixed b() { return 10; }",
 
 
-  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\",10+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1276
+  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\",10+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1290
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\" ,10+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1277
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\" ,10+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1291
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),10+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1278
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),10+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1292
   "mixed b() { return 10+1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\",10+1,10+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1279
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\",10+1,10+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1293
   "mixed b() { return 10+1; }",
 
 
-  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\",10+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1280
+  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\",10+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1294
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\" ,10+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1281
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\" ,10+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1295
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),10+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1282
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),10+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1296
   "mixed b() { return 10+2; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\",10+2,10+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1283
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\",10+2,10+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1297
   "mixed b() { return 10+2; }",
 
 
-  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\",10+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1284
+  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\",10+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1298
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\" ,10+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1285
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\" ,10+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1299
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),10+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1286
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),10+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1300
   "mixed b() { return 10+3; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\",10+3,10+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1287
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\",10+3,10+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1301
   "mixed b() { return 10+3; }",
 
 
 
-  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\",1000),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1288
+  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\",1000),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1302
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\" ,1000),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1289
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\" ,1000),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1303
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),1000),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1290
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),1000),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1304
   "mixed b() { return 1000; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\",1000,1000),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1291
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\",1000,1000),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1305
   "mixed b() { return 1000; }",
 
 
-  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\",1000+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1292
+  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\",1000+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1306
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\" ,1000+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1293
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\" ,1000+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1307
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),1000+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1294
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),1000+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1308
   "mixed b() { return 1000+1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\",1000+1,1000+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1295
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\",1000+1,1000+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1309
   "mixed b() { return 1000+1; }",
 
 
-  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\",1000+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1296
+  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\",1000+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1310
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\" ,1000+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1297
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\" ,1000+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1311
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),1000+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1298
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),1000+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1312
   "mixed b() { return 1000+2; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\",1000+2,1000+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1299
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\",1000+2,1000+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1313
   "mixed b() { return 1000+2; }",
 
 
-  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\",1000+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1300
+  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\",1000+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1314
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\" ,1000+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1301
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\" ,1000+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1315
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),1000+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1302
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),1000+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1316
   "mixed b() { return 1000+3; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\",1000+3,1000+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1303
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\",1000+3,1000+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1317
   "mixed b() { return 1000+3; }",
 
 
 
-  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\",100000),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1304
+  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\",100000),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1318
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\" ,100000),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1305
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\" ,100000),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1319
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),100000),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1306
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),100000),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1320
   "mixed b() { return 100000; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\",100000,100000),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1307
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\",100000,100000),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1321
   "mixed b() { return 100000; }",
 
 
-  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\",100000+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1308
+  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\",100000+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1322
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\" ,100000+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1309
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\" ,100000+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1323
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),100000+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1310
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),100000+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1324
   "mixed b() { return 100000+1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\",100000+1,100000+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1311
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\",100000+1,100000+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1325
   "mixed b() { return 100000+1; }",
 
 
-  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\",100000+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1312
+  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\",100000+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1326
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\" ,100000+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1313
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\" ,100000+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1327
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),100000+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1314
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),100000+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1328
   "mixed b() { return 100000+2; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\",100000+2,100000+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1315
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\",100000+2,100000+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1329
   "mixed b() { return 100000+2; }",
 
 
-  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\",100000+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1316
+  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\",100000+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1330
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\" ,100000+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1317
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\" ,100000+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1331
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),100000+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1318
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),100000+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1332
   "mixed b() { return 100000+3; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\",100000+3,100000+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1319
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[0..strlen(sprintf(\"%'argel-bargel glop-glyf?'2000n\"))-2])+\"'*n\",100000+3,100000+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1333
   "mixed b() { return 100000+3; }",
 
 
 
 
-  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\",10),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1320
+  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\",10),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1334
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\" ,10),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1321
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\" ,10),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1335
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),10),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1322
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),10),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1336
   "mixed b() { return 10; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\",10,10),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1323
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\",10,10),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1337
   "mixed b() { return 10; }",
 
 
-  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\",10+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1324
+  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\",10+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1338
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\" ,10+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1325
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\" ,10+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1339
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),10+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1326
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),10+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1340
   "mixed b() { return 10+1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\",10+1,10+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1327
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\",10+1,10+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1341
   "mixed b() { return 10+1; }",
 
 
-  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\",10+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1328
+  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\",10+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1342
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\" ,10+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1329
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\" ,10+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1343
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),10+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1330
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),10+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1344
   "mixed b() { return 10+2; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\",10+2,10+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1331
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\",10+2,10+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1345
   "mixed b() { return 10+2; }",
 
 
-  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\",10+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1332
+  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\",10+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1346
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\" ,10+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1333
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\" ,10+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1347
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),10+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1334
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),10+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1348
   "mixed b() { return 10+3; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\",10+3,10+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1335
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\",10+3,10+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1349
   "mixed b() { return 10+3; }",
 
 
 
-  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\",1000),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1336
+  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\",1000),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1350
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\" ,1000),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1337
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\" ,1000),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1351
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),1000),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1338
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),1000),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1352
   "mixed b() { return 1000; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\",1000,1000),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1339
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\",1000,1000),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1353
   "mixed b() { return 1000; }",
 
 
-  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\",1000+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1340
+  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\",1000+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1354
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\" ,1000+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1341
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\" ,1000+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1355
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),1000+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1342
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),1000+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1356
   "mixed b() { return 1000+1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\",1000+1,1000+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1343
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\",1000+1,1000+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1357
   "mixed b() { return 1000+1; }",
 
 
-  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\",1000+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1344
+  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\",1000+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1358
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\" ,1000+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1345
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\" ,1000+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1359
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),1000+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1346
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),1000+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1360
   "mixed b() { return 1000+2; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\",1000+2,1000+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1347
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\",1000+2,1000+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1361
   "mixed b() { return 1000+2; }",
 
 
-  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\",1000+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1348
+  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\",1000+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1362
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\" ,1000+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1349
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\" ,1000+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1363
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),1000+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1350
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),1000+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1364
   "mixed b() { return 1000+3; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\",1000+3,1000+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1351
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\",1000+3,1000+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1365
   "mixed b() { return 1000+3; }",
 
 
 
-  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\",100000),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1352
+  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\",100000),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1366
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\" ,100000),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1353
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\" ,100000),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1367
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),100000),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1354
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),100000),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1368
   "mixed b() { return 100000; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\",100000,100000),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1355
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\",100000,100000),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1369
   "mixed b() { return 100000; }",
 
 
-  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\",100000+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1356
+  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\",100000+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1370
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\" ,100000+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1357
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\" ,100000+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1371
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),100000+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1358
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),100000+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1372
   "mixed b() { return 100000+1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\",100000+1,100000+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1359
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\",100000+1,100000+1),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1373
   "mixed b() { return 100000+1; }",
 
 
-  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\",100000+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1360
+  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\",100000+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1374
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\" ,100000+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1361
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\" ,100000+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1375
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),100000+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1362
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),100000+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1376
   "mixed b() { return 100000+2; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\",100000+2,100000+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1363
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\",100000+2,100000+2),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1377
   "mixed b() { return 100000+2; }",
 
 
-  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\",100000+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1364
+  "=mixed a() { return search(sprintf(sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\",100000+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1378
   "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\" ,100000+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1365
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\" ,100000+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1379
   "mixed b() { return -1; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),100000+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1366
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\"),100000+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1380
   "mixed b() { return 100000+3; }",
-  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\",100000+3,100000+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1367
+  "=mixed a() { return search(sprintf(\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\"+sprintf(\"%'argel-bargel glop-glyf?'2000n\")+\"%'\"+(sprintf(\"%'argel-bargel glop-glyf?'2000n\")[1..0x7fffffff])+\"'*n\",100000+3,100000+3),sprintf(\"%'argel-bargel glop-glyf?'2000n\")); }\n"+	// test 1381
   "mixed b() { return 100000+3; }",
 
 
 
 
 
-  "=mixed a() { return search(sprintf(\"SUNE%'+-*'100000n\"),\"SUNE\"); }\n"+	// test 1368
-  "mixed b() { return 0; }",
-  "=mixed a() { return search(sprintf(\"%'+-*'100000nSUNE\"),\"SUNE\"); }\n"+	// test 1369
-  "mixed b() { return 100000; }",
-  "=mixed a() { return search(sprintf(\"%'+-*'100001nSUNE\"),\"SUNE\"); }\n"+	// test 1370
-  "mixed b() { return 100001; }",
-  "=mixed a() { return search(sprintf(\"%'+-*'100002nSUNE\"),\"SUNE\"); }\n"+	// test 1371
-  "mixed b() { return 100002; }",
-  "=mixed a() { return search(sprintf(\"%'+-*'100003nSUNE\"),\"SUNE\"); }\n"+	// test 1372
-  "mixed b() { return 100003; }",
-
-
 // - sizeof
-  "=mixed a() { return sizeof(\"felbar\"); }\n"+	// test 1373
+  "=mixed a() { return sizeof(\"felbar\"); }\n"+	// test 1382
   "mixed b() { return 6; }",
-  "=mixed a() { return sizeof(({\"fulbar\",\"gazonk\",7})); }\n"+	// test 1374
+  "=mixed a() { return sizeof(({\"fulbar\",\"gazonk\",7})); }\n"+	// test 1383
   "mixed b() { return 3; }",
-  "=mixed a() { return sizeof(([8:3,6:6,7:0])); }\n"+	// test 1375
+  "=mixed a() { return sizeof(([8:3,6:6,7:0])); }\n"+	// test 1384
   "mixed b() { return 3; }",
-  "=mixed a() { return sizeof((<8,7,6,5,4,7>)); }\n"+	// test 1376
+  "=mixed a() { return sizeof((<8,7,6,5,4,7>)); }\n"+	// test 1385
   "mixed b() { return 6; }",
 
 // - sum
-  "=mixed a() { return sum(1,1); }\n"+	// test 1377
+  "=mixed a() { return sum(1,1); }\n"+	// test 1386
   "mixed b() { return 2; }",
-  "=mixed a() { return sum(1,-2); }\n"+	// test 1378
+  "=mixed a() { return sum(1,-2); }\n"+	// test 1387
   "mixed b() { return -1; }",
-  "=mixed a() { return sum(-2,-2); }\n"+	// test 1379
+  "=mixed a() { return sum(-2,-2); }\n"+	// test 1388
   "mixed b() { return -4; }",
-  "=mixed a() { return sum(\"hi\",\"there\"); }\n"+	// test 1380
+  "=mixed a() { return sum(\"hi\",\"there\"); }\n"+	// test 1389
   "mixed b() { return \"hithere\"; }",
-  "=mixed a() { return sum(\"human\",\"number\",666); }\n"+	// test 1381
+  "=mixed a() { return sum(\"human\",\"number\",666); }\n"+	// test 1390
   "mixed b() { return \"humannumber666\"; }",
-  "=mixed a() { return sum(\"human\",\"number\",666); }\n"+	// test 1382
+  "=mixed a() { return sum(\"human\",\"number\",666); }\n"+	// test 1391
   "mixed b() { return \"humannumber666\"; }",
-  "=mixed a() { return sum(\"human\",\"number\",666); }\n"+	// test 1383
+  "=mixed a() { return sum(\"human\",\"number\",666); }\n"+	// test 1392
   "mixed b() { return \"humannumber666\"; }",
-  "=mixed a() { return sum(\"human\",\"number\",666,111); }\n"+	// test 1384
+  "=mixed a() { return sum(\"human\",\"number\",666,111); }\n"+	// test 1393
   "mixed b() { return \"humannumber666111\"; }",
-  "=mixed a() { return sum(\"humannumber\",sum(666+111)); }\n"+	// test 1385
+  "=mixed a() { return sum(\"humannumber\",sum(666+111)); }\n"+	// test 1394
   "mixed b() { return \"humannumber777\"; }",
-  "=mixed a() { return sum(\"a\",\"b\",\"c\",\"d\",\"e\",\"f\",\"g\",\"h\",\"i\",\"j\",\"k\",\"l\",\"m\",\"n\",\"o\",\"p\",\"q\",\"r\",\"s\",\"t\",\"u\",\"v\",\"x\",\"y\"); }\n"+	// test 1386
+  "=mixed a() { return sum(\"a\",\"b\",\"c\",\"d\",\"e\",\"f\",\"g\",\"h\",\"i\",\"j\",\"k\",\"l\",\"m\",\"n\",\"o\",\"p\",\"q\",\"r\",\"s\",\"t\",\"u\",\"v\",\"x\",\"y\"); }\n"+	// test 1395
   "mixed b() { return \"abcdefghijklmnopqrstuvxy\"; }",
-  "=mixed a() { return sum(1.0+1.0); }\n"+	// test 1387
+  "=mixed a() { return sum(1.0+1.0); }\n"+	// test 1396
   "mixed b() { return 2.0; }",
-  "=mixed a() { return sum(1.0,-1.0); }\n"+	// test 1388
+  "=mixed a() { return sum(1.0,-1.0); }\n"+	// test 1397
   "mixed b() { return 0.0; }",
-  "=mixed a() { return sum(-1.0,-1.0); }\n"+	// test 1389
+  "=mixed a() { return sum(-1.0,-1.0); }\n"+	// test 1398
   "mixed b() { return -2.0; }",
-  "emixed a() { return sum(({1,2,3}),({4,5,6})); }\n"+	// test 1390
+  "emixed a() { return sum(({1,2,3}),({4,5,6})); }\n"+	// test 1399
   "mixed b() { return ({1,2,3,4,5,6}); }",
-  "emixed a() { return sum((<1,2,3,4>),(<4,5,6>)); }\n"+	// test 1391
+  "emixed a() { return sum((<1,2,3,4>),(<4,5,6>)); }\n"+	// test 1400
   "mixed b() { return (<1,2,3,4,4,5,6>); }",
-  "emixed a() { return sum(([0:1,3:6]),([5:2,3:6])); }\n"+	// test 1392
+  "emixed a() { return sum(([0:1,3:6]),([5:2,3:6])); }\n"+	// test 1401
   "mixed b() { return ([0:1,3:6,3:6,5:2]); }",
 
 // - this_object
-  "tmixed a() { return objectp(this_object()); }",	// test 1393
+  "tmixed a() { return objectp(this_object()); }",	// test 1402
 
 // - throw
-  "=mixed a() { return 20; }\n"+	// test 1394
+  "=mixed a() { return 20; }\n"+	// test 1403
   "mixed b() { return catch(throw(a())); }",
 
 // - time
-  "tmixed a() { return intp(time()); }",	// test 1395
+  "tmixed a() { return intp(time()); }",	// test 1404
 
 // - trace
-  "dmixed a() { trace(0); }\n",	// test 1396
-  "=mixed a() { return trace(0); }\n"+	// test 1397
+  "dmixed a() { trace(0); }\n",	// test 1405
+  "=mixed a() { return trace(0); }\n"+	// test 1406
   "mixed b() { return 0; }",
 
 // - upper_case
-  "emixed a() { return upper_case(\"fooq\"); }\n"+	// test 1398
+  "emixed a() { return upper_case(\"fooq\"); }\n"+	// test 1407
   "mixed b() { return \"FOOQ\"; }",
-  "emixed a() { return upper_case(\"FooR\"); }\n"+	// test 1399
+  "emixed a() { return upper_case(\"FooR\"); }\n"+	// test 1408
   "mixed b() { return \"FOOR\"; }",
-  "emixed a() { return upper_case(\"Foo1234-*~\\n\"); }\n"+	// test 1400
+  "emixed a() { return upper_case(\"Foo1234-*~\\n\"); }\n"+	// test 1409
   "mixed b() { return \"FOO1234-*~\\n\"; }",
 
 // - values
-  "emixed a() { return values(\"foo\"); }\n"+	// test 1401
+  "emixed a() { return values(\"foo\"); }\n"+	// test 1410
   "mixed b() { return ({'f','o','o'}); }",
-  "emixed a() { return values(({'f','o','o'})); }\n"+	// test 1402
+  "emixed a() { return values(({'f','o','o'})); }\n"+	// test 1411
   "mixed b() { return ({'f','o','o'}); }",
-  "emixed a() { return sort_array(values(([7:3,8:9,99:12]))); }\n"+	// test 1403
+  "emixed a() { return sort_array(values(([7:3,8:9,99:12]))); }\n"+	// test 1412
   "mixed b() { return ({3,9,12}); }",
-  "emixed a() { return values((<7,8,99>)); }\n"+	// test 1404
+  "emixed a() { return values((<7,8,99>)); }\n"+	// test 1413
   "mixed b() { return ({1,1,1}); }",
 
 // - zero_type
-  "=mixed a() { return zero_type(0); }\n"+	// test 1405
+  "=mixed a() { return zero_type(0); }\n"+	// test 1414
   "mixed b() { return 0; }",
-  "=mixed a() { return zero_type(([])[7]); }\n"+	// test 1406
+  "=mixed a() { return zero_type(([])[7]); }\n"+	// test 1415
   "mixed b() { return 1; }",
 
 // - call_out, call_out_info, remove_call_out, find_call_out
-  "dmixed a() { call_out(a,100000); }\n",	// test 1407
-  "tmixed a() { return arrayp(call_out_info()); }",	// test 1408
-  "tmixed a() { return sizeof(call_out_info()) > 0; }",	// test 1409
-  "tmixed a() { return call_out_info()[-1][0] > 1; }",	// test 1410
-  "=mixed a() { return find_call_out(call_out_info()[-1][2]); }\n"+	// test 1411
+  "dmixed a() { call_out(a,100000); }\n",	// test 1416
+  "tmixed a() { return arrayp(call_out_info()); }",	// test 1417
+  "tmixed a() { return sizeof(call_out_info()) > 0; }",	// test 1418
+  "tmixed a() { return call_out_info()[-1][0] > 1; }",	// test 1419
+  "=mixed a() { return find_call_out(call_out_info()[-1][2]); }\n"+	// test 1420
   "mixed b() { return call_out_info()[-1][0]; }",
-  "=mixed a() { return find_call_out(a); }\n"+	// test 1412
+  "=mixed a() { return find_call_out(a); }\n"+	// test 1421
   "mixed b() { return -1; }",
-  "tmixed a() { return zero_type(find_call_out(a)); }",	// test 1413
-  "dmixed a() { remove_call_out(call_out_info()[-1][2]); }\n",	// test 1414
-  "tmixed a() { return !sizeof(call_out_info()) || function_name(call_out_info()[-1][2])!=\"a\"; }",	// test 1415
+  "tmixed a() { return zero_type(find_call_out(a)); }",	// test 1422
+  "dmixed a() { remove_call_out(call_out_info()[-1][2]); }\n",	// test 1423
+  "tmixed a() { return !sizeof(call_out_info()) || function_name(call_out_info()[-1][2])!=\"a\"; }",	// test 1424
 
 // m_delete
-  "emixed a() { return ([1:1]); }\n"+	// test 1416
+  "emixed a() { return ([1:1]); }\n"+	// test 1425
   "mixed b() { return m_delete(a(),0); }",
-  "emixed a() { return ([1:1]); }\n"+	// test 1417
+  "emixed a() { return ([1:1]); }\n"+	// test 1426
   "mixed b() { return m_delete(([1:1,0:3]),0); }",
-  "=mixed a() { mapping a=([1:1]); return a==m_delete(a,1); }\n"+	// test 1418
+  "=mixed a() { mapping a=([1:1]); return a==m_delete(a,1); }\n"+	// test 1427
   "mixed b() { return 1; }",
 
-  "t\n"+"int b=10; mixed a() { return 1; }\n",	// test 1419 
-  "t\n"+"mixed b=10; mixed a() { return 1;}\n",	// test 1420 
-  "Pstring a() { return \"/test\"; }\n"+	// test 1421
+  "t\n"+"int b=10; mixed a() { return 1; }\n",	// test 1428 
+  "t\n"+"mixed b=10; mixed a() { return 1;}\n",	// test 1429 
+  "Pstring a() { return \"/test\"; }\n"+	// test 1430
   "string b() { return \"int q,w,e,r,t; mixed foo() { return 10; }\"; }",
 
-  "t\n"+"inherit \"/test\"; mixed a() { return foo()==10; }\n",	// test 1422 
-  "t\n"+"inherit \"/test\"; mixed a() { return test::foo()==10; }\n",	// test 1423 
-  "t\n"+"inherit \"/test\" : bar; mixed a() { return bar::foo()==10; }\n",	// test 1424 
+  "t\n"+"inherit \"/test\"; mixed a() { return foo()==10; }\n",	// test 1431 
+  "t\n"+"inherit \"/test\"; mixed a() { return test::foo()==10; }\n",	// test 1432 
+  "t\n"+"inherit \"/test\" : bar; mixed a() { return bar::foo()==10; }\n",	// test 1433 
 
-  "Pstring a() { return \"/test2\"; }\n"+	// test 1425
+  "Pstring a() { return \"/test2\"; }\n"+	// test 1434
   "string b() { return \"int z,x,c,v,b; mixed bar() { return 11; }\"; }",
-  "t\n"+"inherit \"/test\"; inherit \"/test2\"; mixed a() { return foo()==10 && bar()==11; }\n",	// test 1426 
-  "t\n"+"inherit \"/test2\"; inherit \"/test\"; mixed a() { return foo()==10 && bar()==11; }\n",	// test 1427 
+  "t\n"+"inherit \"/test\"; inherit \"/test2\"; mixed a() { return foo()==10 && bar()==11; }\n",	// test 1435 
+  "t\n"+"inherit \"/test2\"; inherit \"/test\"; mixed a() { return foo()==10 && bar()==11; }\n",	// test 1436 
 
-  "Pstring a() { return \"/test\"; }\n"+	// test 1428
+  "Pstring a() { return \"/test\"; }\n"+	// test 1437
   "string b() { return \"int q,w,e,r; mixed t; mixed getw() { return w; } void setw(int _) { w=_; }\"; }",
-  "Pstring a() { return \"/test2\"; }\n"+	// test 1429
+  "Pstring a() { return \"/test2\"; }\n"+	// test 1438
   "string b() { return \"int z,x,c,v,b; mixed getb() { return b; } void setb(int _) { b=_; }\"; }",
 
-  "t\n"+"inherit \"/test\"; inherit \"/test2\"; mixed a() { w=20; b=22; return getw()==20 && getb()==22; }\n",	// test 1430 
-  "t\n"+"inherit \"/test\"; inherit \"/test2\"; mixed a() { setw(20); setb(22); return w==20 && b==22; }\n",	// test 1431 
-  "t\n"+"inherit \"/test2\"; inherit \"/test\"; mixed a() { w=20; b=22; return getw()==20 && getb()==22; }\n",	// test 1432 
-  "t\n"+"inherit \"/test2\"; inherit \"/test\"; mixed a() { setw(20); setb(22); return w==20 && b==22; }\n",	// test 1433 
+  "t\n"+"inherit \"/test\"; inherit \"/test2\"; mixed a() { w=20; b=22; return getw()==20 && getb()==22; }\n",	// test 1439 
+  "t\n"+"inherit \"/test\"; inherit \"/test2\"; mixed a() { setw(20); setb(22); return w==20 && b==22; }\n",	// test 1440 
+  "t\n"+"inherit \"/test2\"; inherit \"/test\"; mixed a() { w=20; b=22; return getw()==20 && getb()==22; }\n",	// test 1441 
+  "t\n"+"inherit \"/test2\"; inherit \"/test\"; mixed a() { setw(20); setb(22); return w==20 && b==22; }\n",	// test 1442 
 
 
   });
diff --git a/src/BUGS b/src/BUGS
index e4360198e3..e25311d854 100644
--- a/src/BUGS
+++ b/src/BUGS
@@ -273,6 +273,35 @@
   some systems
 	fixed
 
+* destruct and this_object() dumped core if called directly from driver
+	fixed
+
+* test for working memmove in configure.in was broken
+	fixed
+
+* there was some casts used as lvalues in memory.c
+	fixed
+
+* modules/files/efun.c didn't compile on some systems that doesn't have
+  MAXPATHLEN defined, in this case we just define it to 32768
+	fixed
+
+* signals only worked once
+	fixed
+
+* configure didn't find alloca if it was hideing in libPW
+	hopefully fixed
+
+* calling void functions directly from driver callbacks causes coredumps
+	fixed
+
+* signal handlers are not called while file->read is blocking
+	fixed
+
+* really large constant arrays crashes uLPC
+
+* need some way of using shared and non-shared module dirs..
+
 * setup_fake_program is called too often, I should keep fake_program updated instead
 
 * foreach somtimes says 'bad argument 1 to foreach' after a completed loop
diff --git a/src/Makefile.in b/src/Makefile.in
index b7442ab7a7..aab4d7ef0b 100644
--- a/src/Makefile.in
+++ b/src/Makefile.in
@@ -66,7 +66,7 @@ OBJ=language.o add_efun.o array.o builtin_efuns.o backend.o \
     fsort.o hashtable.o interpret.o lex.o las.o list.o \
     lpc_types.o main.o mapping.o memory.o module.o object.o \
     opcodes.o operators.o port.o program.o rusage.o stralloc.o \
-    stuff.o svalue.o debug.o callback.o
+    stuff.o svalue.o debug.o callback.o lpc_signal.o
 
 #
 MODULES=@subdirs@
@@ -129,8 +129,7 @@ tidy:
 clean: tidy
 	-for a in $(MODULES) ; do ( cd $$a ; ${MAKE} $(MAKE_FLAGS) clean ) ; done
 	-for a in $(MODULES) ; do rm -f $$a/*.o ; done
-	-rm -f language.h language.c efun_protos.h opc_cost.h
-	-rm -f TAGS tags
+	-rm -f language.h language.c TAGS tags
 	-rm -f yacc.acts yacc.debug yacc.tmp *.debug.log a.out
 
 spotless: clean
@@ -166,206 +165,244 @@ verify: $(TMP_LIBDIR)/testsuite.lpc
 verbose_verify: $(TMP_LIBDIR)/testsuite.lpc
 	./ulpc -m $(TMP_LIBDIR)/master.lpc $(TMP_LIBDIR)/testsuite.lpc --verbose
 
+gdb_verify: $(TMP_LIBDIR)/testsuite.lpc
+	echo >.gdbinit handle SIGUSR1 nostop noprint pass
+	echo >>.gdbinit run -m $(TMP_LIBDIR)/master.lpc $(TMP_LIBDIR)/testsuite.lpc -v -v -f
+	gdb ./ulpc
+ 
+run_hilfe:
+	./ulpc -m $(TMP_LIBDIR)/master.lpc $(TMP_BINDIR)/hilfe
+ 
+
 depend: language.c
-	gcc -MM $(PREFLAGS) *.c $(SRCDIR)/*.c >$(SRCDIR)/dependencies
+	gcc -MM $(PREFLAGS) *.c $(SRCDIR)/*.c | sed 's;$(SRCDIR)/;;g' | sed 's;\./;;g' >$(SRCDIR)/dependencies
 	cat $(SRCDIR)/Makefile.in.src $(SRCDIR)/dependencies > $(SRCDIR)/Makefile.in
 	config.status
 	for a in $(MODULES) ; do ( cd $$a ; ${MAKE} $(MAKE_FLAGS) depend ) ; done
 
-add_efun.o: add_efun.c add_efun.h svalue.h types.h machine.h \
- hashtable.h macros.h memory.h program.h config.h lpc_types.h \
- stralloc.h interpret.h
+add_efun.o: add_efun.c add_efun.h \
+ svalue.h types.h machine.h \
+ hashtable.h las.h config.h \
+ dynamic_buffer.h program.h \
+ macros.h memory.h \
+ lpc_types.h stralloc.h \
+ interpret.h
 alloca.o: alloca.c
-array.o: array.c global.h config.h machine.h port.h types.h svalue.h \
- array.h las.h dynamic_buffer.h program.h object.h stralloc.h \
- interpret.h language.h error.h lpc_types.h fsort.h builtin_efuns.h \
- memory.h
-backend.o: backend.c global.h config.h machine.h port.h types.h \
- interpret.h program.h object.h svalue.h error.h call_out.h backend.h \
- fd_control.h main.h debug.h callback.h array.h las.h dynamic_buffer.h
-builtin_efuns.o: builtin_efuns.c global.h config.h machine.h port.h \
- types.h interpret.h program.h svalue.h macros.h memory.h object.h \
- array.h las.h dynamic_buffer.h error.h add_efun.h hashtable.h \
- mapping.h stralloc.h lex.h list.h lpc_types.h rusage.h operators.h \
- fsort.h call_out.h callback.h
-call_out.o: call_out.c global.h config.h machine.h port.h types.h \
- array.h las.h svalue.h dynamic_buffer.h program.h call_out.h object.h \
- interpret.h error.h builtin_efuns.h memory.h
-callback.o: callback.c macros.h memory.h types.h machine.h callback.h \
- array.h las.h config.h svalue.h dynamic_buffer.h program.h
-debug.o: debug.c global.h config.h machine.h port.h types.h memory.h
-docode.o: docode.c global.h config.h machine.h port.h types.h las.h \
- svalue.h dynamic_buffer.h program.h language.h lpc_types.h stralloc.h \
- interpret.h add_efun.h hashtable.h array.h macros.h memory.h error.h \
- main.h lex.h builtin_efuns.h
-dynamic_buffer.o: dynamic_buffer.c global.h config.h machine.h port.h \
- types.h dynamic_buffer.h stralloc.h error.h svalue.h memory.h
-error.o: error.c global.h config.h machine.h port.h types.h macros.h \
- memory.h error.h svalue.h interpret.h program.h stralloc.h \
- builtin_efuns.h array.h las.h dynamic_buffer.h object.h
-fd_control.o: fd_control.c fd_control.h global.h config.h machine.h \
- port.h types.h
-fsort.o: fsort.c global.h config.h machine.h port.h types.h fsort.h
-hashtable.o: hashtable.c hashtable.h types.h machine.h stralloc.h \
- config.h stuff.h error.h svalue.h
-interpret.o: interpret.c global.h config.h machine.h port.h types.h \
- interpret.h program.h object.h svalue.h array.h las.h \
- dynamic_buffer.h mapping.h error.h language.h stralloc.h add_efun.h \
- hashtable.h macros.h memory.h list.h backend.h operators.h opcodes.h \
- main.h lex.h builtin_efuns.h
-language.o: language.c ./global.h ./config.h ./machine.h ./port.h \
- ./interpret.h ./program.h ./array.h ./las.h ./svalue.h \
- ./dynamic_buffer.h ./object.h ./stralloc.h ./lex.h ./lpc_types.h \
- ./add_efun.h ./hashtable.h ./macros.h ./error.h ./docode.h
-las.o: las.c global.h config.h machine.h port.h types.h language.h \
- interpret.h program.h las.h svalue.h dynamic_buffer.h array.h \
- object.h stralloc.h lex.h lpc_types.h add_efun.h hashtable.h \
- mapping.h list.h error.h docode.h main.h memory.h
-lex.o: lex.c global.h config.h machine.h port.h types.h language.h \
- array.h las.h svalue.h dynamic_buffer.h program.h lex.h stralloc.h \
- add_efun.h hashtable.h stuff.h memory.h interpret.h error.h object.h \
- operators.h opcodes.h builtin_efuns.h macros.h
-list.o: list.c global.h config.h machine.h port.h types.h array.h \
- las.h svalue.h dynamic_buffer.h program.h list.h macros.h memory.h \
- error.h interpret.h builtin_efuns.h
-lpc_types.o: lpc_types.c global.h config.h machine.h port.h types.h \
- svalue.h lpc_types.h stralloc.h stuff.h array.h las.h \
- dynamic_buffer.h program.h add_efun.h hashtable.h object.h list.h \
- mapping.h macros.h memory.h error.h
-main.o: main.c global.h config.h machine.h port.h types.h backend.h \
- module.h object.h svalue.h lex.h lpc_types.h builtin_efuns.h array.h \
- las.h dynamic_buffer.h program.h stralloc.h interpret.h error.h \
- macros.h memory.h callback.h
-mapping.o: mapping.c global.h config.h machine.h port.h types.h \
- mapping.h las.h svalue.h dynamic_buffer.h program.h array.h macros.h \
- memory.h language.h error.h interpret.h
-memory.o: memory.c global.h config.h machine.h port.h types.h memory.h \
+array.o: array.c global.h \
+ machine.h config.h debug.h \
+ port.h svalue.h array.h \
+ las.h dynamic_buffer.h \
+ program.h object.h \
+ stralloc.h interpret.h \
+ language.h error.h \
+ lpc_types.h fsort.h \
+ builtin_efuns.h
+backend.o: backend.c global.h \
+ machine.h config.h debug.h \
+ port.h interpret.h \
+ program.h object.h svalue.h \
+ error.h call_out.h \
+ backend.h fd_control.h \
+ main.h callback.h array.h \
+ las.h dynamic_buffer.h
+builtin_efuns.o: builtin_efuns.c global.h \
+ machine.h config.h debug.h \
+ port.h interpret.h \
+ program.h svalue.h macros.h \
+ object.h array.h las.h \
+ dynamic_buffer.h error.h \
+ add_efun.h hashtable.h \
+ mapping.h stralloc.h lex.h \
+ list.h lpc_types.h rusage.h \
+ operators.h fsort.h \
+ call_out.h callback.h
+call_out.o: call_out.c global.h \
+ machine.h config.h debug.h \
+ port.h array.h las.h \
+ svalue.h dynamic_buffer.h \
+ program.h call_out.h \
+ object.h interpret.h \
+ error.h builtin_efuns.h
+callback.o: callback.c macros.h \
+ memory.h types.h machine.h \
+ callback.h array.h las.h \
+ config.h svalue.h \
+ dynamic_buffer.h program.h
+debug.o: debug.c global.h \
+ machine.h config.h debug.h \
+ port.h
+docode.o: docode.c global.h \
+ machine.h config.h debug.h \
+ port.h las.h svalue.h \
+ dynamic_buffer.h program.h \
+ language.h lpc_types.h \
+ stralloc.h interpret.h \
+ add_efun.h hashtable.h \
+ array.h macros.h error.h \
+ main.h lex.h \
+ builtin_efuns.h
+dynamic_buffer.o: dynamic_buffer.c \
+ global.h machine.h config.h \
+ debug.h port.h \
+ dynamic_buffer.h stralloc.h \
+ error.h svalue.h
+error.o: error.c global.h \
+ machine.h config.h debug.h \
+ port.h macros.h error.h \
+ svalue.h interpret.h \
+ program.h stralloc.h \
+ builtin_efuns.h array.h \
+ las.h dynamic_buffer.h \
+ object.h
+fd_control.o: fd_control.c fd_control.h \
+ global.h machine.h config.h \
+ debug.h port.h
+fsort.o: fsort.c global.h \
+ machine.h config.h debug.h \
+ port.h fsort.h
+hashtable.o: hashtable.c hashtable.h \
+ types.h machine.h \
+ stralloc.h config.h stuff.h \
  error.h svalue.h
-module.o: module.c module.h types.h machine.h macros.h memory.h \
- error.h svalue.h modlist.h
-object.o: object.c global.h config.h machine.h port.h types.h object.h \
- svalue.h dynamic_buffer.h interpret.h program.h stralloc.h macros.h \
- memory.h error.h main.h
-opcodes.o: opcodes.c global.h config.h machine.h port.h types.h \
- interpret.h program.h svalue.h array.h las.h dynamic_buffer.h \
- stralloc.h mapping.h list.h opcodes.h object.h error.h lpc_types.h
-operators.o: operators.c global.h config.h machine.h port.h types.h \
- interpret.h program.h svalue.h list.h las.h dynamic_buffer.h \
- mapping.h array.h stralloc.h opcodes.h operators.h language.h \
- memory.h error.h
-port.o: port.c global.h config.h machine.h port.h types.h macros.h \
- memory.h
-program.o: program.c global.h config.h machine.h port.h types.h \
- program.h object.h svalue.h dynamic_buffer.h lpc_types.h stralloc.h \
- las.h language.h lex.h macros.h memory.h fsort.h error.h docode.h \
- interpret.h hashtable.h
-rusage.o: rusage.c global.h config.h machine.h port.h types.h rusage.h
-stralloc.o: stralloc.c global.h config.h machine.h port.h types.h \
- stralloc.h macros.h memory.h dynamic_buffer.h error.h svalue.h
-stuff.o: stuff.c stuff.h types.h machine.h
-svalue.o: svalue.c global.h config.h machine.h port.h types.h svalue.h \
- stralloc.h array.h las.h dynamic_buffer.h program.h mapping.h list.h \
- object.h add_efun.h hashtable.h error.h
+interpret.o: interpret.c global.h \
+ machine.h config.h debug.h \
+ port.h interpret.h \
+ program.h object.h svalue.h \
+ array.h las.h \
+ dynamic_buffer.h mapping.h \
+ error.h language.h \
+ stralloc.h add_efun.h \
+ hashtable.h macros.h list.h \
+ backend.h operators.h \
+ opcodes.h main.h lex.h \
+ builtin_efuns.h lpc_signal.h
+language.o: language.c global.h \
+ machine.h config.h debug.h \
+ port.h interpret.h \
+ program.h array.h las.h \
+ svalue.h dynamic_buffer.h \
+ object.h stralloc.h lex.h \
+ lpc_types.h add_efun.h \
+ hashtable.h macros.h \
+ error.h docode.h
+las.o: las.c global.h \
+ machine.h config.h debug.h \
+ port.h language.h \
+ interpret.h program.h las.h \
+ svalue.h dynamic_buffer.h \
+ array.h object.h stralloc.h \
+ lex.h lpc_types.h \
+ add_efun.h hashtable.h \
+ mapping.h list.h error.h \
+ docode.h main.h
+lex.o: lex.c global.h \
+ machine.h config.h debug.h \
+ port.h language.h array.h \
+ las.h svalue.h \
+ dynamic_buffer.h program.h \
+ lex.h stralloc.h add_efun.h \
+ hashtable.h stuff.h \
+ interpret.h error.h \
+ object.h operators.h \
+ opcodes.h builtin_efuns.h \
+ macros.h
+list.o: list.c global.h \
+ machine.h config.h debug.h \
+ port.h array.h las.h \
+ svalue.h dynamic_buffer.h \
+ program.h list.h macros.h \
+ error.h interpret.h \
+ builtin_efuns.h
+lpc_signal.o: lpc_signal.c global.h \
+ machine.h config.h debug.h \
+ port.h svalue.h interpret.h \
+ program.h stralloc.h \
+ add_efun.h hashtable.h \
+ las.h dynamic_buffer.h \
+ macros.h backend.h
+lpc_types.o: lpc_types.c global.h \
+ machine.h config.h debug.h \
+ port.h svalue.h lpc_types.h \
+ stralloc.h stuff.h array.h \
+ las.h dynamic_buffer.h \
+ program.h add_efun.h \
+ hashtable.h object.h list.h \
+ mapping.h macros.h error.h
+main.o: main.c global.h \
+ machine.h config.h debug.h \
+ port.h backend.h module.h \
+ object.h svalue.h lex.h \
+ lpc_types.h builtin_efuns.h \
+ array.h las.h \
+ dynamic_buffer.h program.h \
+ stralloc.h interpret.h \
+ error.h macros.h callback.h \
+ lpc_signal.h
+mapping.o: mapping.c global.h \
+ machine.h config.h debug.h \
+ port.h mapping.h las.h \
+ svalue.h dynamic_buffer.h \
+ program.h array.h macros.h \
+ language.h error.h \
+ interpret.h
+memory.o: memory.c global.h \
+ machine.h config.h debug.h \
+ port.h error.h svalue.h
+module.o: module.c module.h \
+ types.h machine.h macros.h \
+ memory.h error.h svalue.h \
+ modlist.h
+object.o: object.c global.h \
+ machine.h config.h debug.h \
+ port.h object.h svalue.h \
+ dynamic_buffer.h interpret.h \
+ program.h stralloc.h \
+ macros.h error.h main.h
+opcodes.o: opcodes.c global.h \
+ machine.h config.h debug.h \
+ port.h interpret.h \
+ program.h svalue.h array.h \
+ las.h dynamic_buffer.h \
+ stralloc.h mapping.h list.h \
+ opcodes.h object.h error.h \
+ lpc_types.h
+operators.o: operators.c global.h \
+ machine.h config.h debug.h \
+ port.h interpret.h \
+ program.h svalue.h list.h \
+ las.h dynamic_buffer.h \
+ mapping.h array.h \
+ stralloc.h opcodes.h \
+ operators.h language.h \
+ error.h
+port.o: port.c global.h \
+ machine.h config.h debug.h \
+ port.h macros.h
+program.o: program.c global.h \
+ machine.h config.h debug.h \
+ port.h program.h object.h \
+ svalue.h dynamic_buffer.h \
+ lpc_types.h stralloc.h \
+ las.h language.h lex.h \
+ macros.h fsort.h error.h \
+ docode.h interpret.h \
+ hashtable.h
+rusage.o: rusage.c global.h \
+ machine.h config.h debug.h \
+ port.h rusage.h
+stralloc.o: stralloc.c global.h \
+ machine.h config.h debug.h \
+ port.h stralloc.h macros.h \
+ dynamic_buffer.h error.h \
+ svalue.h
+stuff.o: stuff.c stuff.h \
+ types.h machine.h
+svalue.o: svalue.c global.h \
+ machine.h config.h debug.h \
+ port.h svalue.h stralloc.h \
+ array.h las.h \
+ dynamic_buffer.h program.h \
+ mapping.h list.h object.h \
+ add_efun.h hashtable.h \
+ error.h
 ualarm.o: ualarm.c
-add_efun.o: ./add_efun.c ./add_efun.h ./svalue.h ./types.h ./machine.h \
- ./hashtable.h ./macros.h ./memory.h ./program.h ./config.h \
- ./lpc_types.h ./stralloc.h ./interpret.h
-alloca.o: ./alloca.c
-array.o: ./array.c ./global.h ./config.h ./machine.h ./port.h \
- ./svalue.h ./array.h ./las.h ./dynamic_buffer.h ./program.h \
- ./object.h ./stralloc.h ./interpret.h ./language.h ./error.h \
- ./lpc_types.h ./fsort.h ./builtin_efuns.h
-backend.o: ./backend.c ./global.h ./config.h ./machine.h ./port.h \
- ./interpret.h ./program.h ./object.h ./svalue.h ./error.h \
- ./call_out.h ./backend.h ./fd_control.h ./main.h ./debug.h \
- ./callback.h ./array.h ./las.h ./dynamic_buffer.h
-builtin_efuns.o: ./builtin_efuns.c ./global.h ./config.h ./machine.h \
- ./port.h ./interpret.h ./program.h ./svalue.h ./macros.h ./object.h \
- ./array.h ./las.h ./dynamic_buffer.h ./error.h ./add_efun.h \
- ./hashtable.h ./mapping.h ./stralloc.h ./lex.h ./list.h ./lpc_types.h \
- ./rusage.h ./operators.h ./fsort.h ./call_out.h ./callback.h
-call_out.o: ./call_out.c ./global.h ./config.h ./machine.h ./port.h \
- ./array.h ./las.h ./svalue.h ./dynamic_buffer.h ./program.h \
- ./call_out.h ./object.h ./interpret.h ./error.h ./builtin_efuns.h
-callback.o: ./callback.c ./macros.h ./memory.h ./types.h ./machine.h \
- ./callback.h ./array.h ./las.h ./config.h ./svalue.h \
- ./dynamic_buffer.h ./program.h
-debug.o: ./debug.c ./global.h ./config.h ./machine.h ./port.h
-docode.o: ./docode.c ./global.h ./config.h ./machine.h ./port.h \
- ./las.h ./svalue.h ./dynamic_buffer.h ./program.h ./language.h \
- ./lpc_types.h ./stralloc.h ./interpret.h ./add_efun.h ./hashtable.h \
- ./array.h ./macros.h ./error.h ./main.h ./lex.h ./builtin_efuns.h
-dynamic_buffer.o: ./dynamic_buffer.c ./global.h ./config.h ./machine.h \
- ./port.h ./dynamic_buffer.h ./stralloc.h ./error.h ./svalue.h
-error.o: ./error.c ./global.h ./config.h ./machine.h ./port.h \
- ./macros.h ./error.h ./svalue.h ./interpret.h ./program.h \
- ./stralloc.h ./builtin_efuns.h ./array.h ./las.h ./dynamic_buffer.h \
- ./object.h
-fd_control.o: ./fd_control.c ./fd_control.h ./global.h ./config.h \
- ./machine.h ./port.h
-fsort.o: ./fsort.c ./global.h ./config.h ./machine.h ./port.h \
- ./fsort.h
-hashtable.o: ./hashtable.c ./hashtable.h ./types.h ./machine.h \
- ./stralloc.h ./config.h ./stuff.h ./error.h ./svalue.h
-interpret.o: ./interpret.c ./global.h ./config.h ./machine.h ./port.h \
- ./interpret.h ./program.h ./object.h ./svalue.h ./array.h ./las.h \
- ./dynamic_buffer.h ./mapping.h ./error.h ./language.h ./stralloc.h \
- ./add_efun.h ./hashtable.h ./macros.h ./list.h ./backend.h \
- ./operators.h ./opcodes.h ./main.h ./lex.h ./builtin_efuns.h
-language.o: ./language.c ./global.h ./config.h ./machine.h ./port.h \
- ./interpret.h ./program.h ./array.h ./las.h ./svalue.h \
- ./dynamic_buffer.h ./object.h ./stralloc.h ./lex.h ./lpc_types.h \
- ./add_efun.h ./hashtable.h ./macros.h ./error.h ./docode.h
-las.o: ./las.c ./global.h ./config.h ./machine.h ./port.h ./language.h \
- ./interpret.h ./program.h ./las.h ./svalue.h ./dynamic_buffer.h \
- ./array.h ./object.h ./stralloc.h ./lex.h ./lpc_types.h ./add_efun.h \
- ./hashtable.h ./mapping.h ./list.h ./error.h ./docode.h ./main.h
-lex.o: ./lex.c ./global.h ./config.h ./machine.h ./port.h ./language.h \
- ./array.h ./las.h ./svalue.h ./dynamic_buffer.h ./program.h ./lex.h \
- ./stralloc.h ./add_efun.h ./hashtable.h ./stuff.h ./interpret.h \
- ./error.h ./object.h ./operators.h ./opcodes.h ./builtin_efuns.h \
- ./macros.h
-list.o: ./list.c ./global.h ./config.h ./machine.h ./port.h ./array.h \
- ./las.h ./svalue.h ./dynamic_buffer.h ./program.h ./list.h ./macros.h \
- ./error.h ./interpret.h ./builtin_efuns.h
-lpc_types.o: ./lpc_types.c ./global.h ./config.h ./machine.h ./port.h \
- ./svalue.h ./lpc_types.h ./stralloc.h ./stuff.h ./array.h ./las.h \
- ./dynamic_buffer.h ./program.h ./add_efun.h ./hashtable.h ./object.h \
- ./list.h ./mapping.h ./macros.h ./error.h
-main.o: ./main.c ./global.h ./config.h ./machine.h ./port.h \
- ./backend.h ./module.h ./object.h ./svalue.h ./lex.h ./lpc_types.h \
- ./builtin_efuns.h ./array.h ./las.h ./dynamic_buffer.h ./program.h \
- ./stralloc.h ./interpret.h ./error.h ./macros.h ./callback.h
-mapping.o: ./mapping.c ./global.h ./config.h ./machine.h ./port.h \
- ./mapping.h ./las.h ./svalue.h ./dynamic_buffer.h ./program.h \
- ./array.h ./macros.h ./language.h ./error.h ./interpret.h
-memory.o: ./memory.c ./global.h ./config.h ./machine.h ./port.h \
- ./error.h ./svalue.h
-module.o: ./module.c ./module.h ./types.h ./machine.h ./macros.h \
- ./memory.h ./error.h ./svalue.h ./modlist.h
-object.o: ./object.c ./global.h ./config.h ./machine.h ./port.h \
- ./object.h ./svalue.h ./dynamic_buffer.h ./interpret.h ./program.h \
- ./stralloc.h ./macros.h ./error.h ./main.h
-opcodes.o: ./opcodes.c ./global.h ./config.h ./machine.h ./port.h \
- ./interpret.h ./program.h ./svalue.h ./array.h ./las.h \
- ./dynamic_buffer.h ./stralloc.h ./mapping.h ./list.h ./opcodes.h \
- ./object.h ./error.h ./lpc_types.h
-operators.o: ./operators.c ./global.h ./config.h ./machine.h ./port.h \
- ./interpret.h ./program.h ./svalue.h ./list.h ./las.h \
- ./dynamic_buffer.h ./mapping.h ./array.h ./stralloc.h ./opcodes.h \
- ./operators.h ./language.h ./error.h
-port.o: ./port.c ./global.h ./config.h ./machine.h ./port.h ./macros.h
-program.o: ./program.c ./global.h ./config.h ./machine.h ./port.h \
- ./program.h ./object.h ./svalue.h ./dynamic_buffer.h ./lpc_types.h \
- ./stralloc.h ./las.h ./language.h ./lex.h ./macros.h ./fsort.h \
- ./error.h ./docode.h ./interpret.h ./hashtable.h
-rusage.o: ./rusage.c ./global.h ./config.h ./machine.h ./port.h \
- ./rusage.h
-stralloc.o: ./stralloc.c ./global.h ./config.h ./machine.h ./port.h \
- ./stralloc.h ./macros.h ./dynamic_buffer.h ./error.h ./svalue.h
-stuff.o: ./stuff.c ./stuff.h ./types.h ./machine.h
-svalue.o: ./svalue.c ./global.h ./config.h ./machine.h ./port.h \
- ./svalue.h ./stralloc.h ./array.h ./las.h ./dynamic_buffer.h \
- ./program.h ./mapping.h ./list.h ./object.h ./add_efun.h \
- ./hashtable.h ./error.h
-ualarm.o: ./ualarm.c
diff --git a/src/Makefile.in.src b/src/Makefile.in.src
index bba23fffe7..242bfbec64 100644
--- a/src/Makefile.in.src
+++ b/src/Makefile.in.src
@@ -66,7 +66,7 @@ OBJ=language.o add_efun.o array.o builtin_efuns.o backend.o \
     fsort.o hashtable.o interpret.o lex.o las.o list.o \
     lpc_types.o main.o mapping.o memory.o module.o object.o \
     opcodes.o operators.o port.o program.o rusage.o stralloc.o \
-    stuff.o svalue.o debug.o callback.o
+    stuff.o svalue.o debug.o callback.o lpc_signal.o
 
 #
 MODULES=@subdirs@
@@ -129,8 +129,7 @@ tidy:
 clean: tidy
 	-for a in $(MODULES) ; do ( cd $$a ; ${MAKE} $(MAKE_FLAGS) clean ) ; done
 	-for a in $(MODULES) ; do rm -f $$a/*.o ; done
-	-rm -f language.h language.c efun_protos.h opc_cost.h
-	-rm -f TAGS tags
+	-rm -f language.h language.c TAGS tags
 	-rm -f yacc.acts yacc.debug yacc.tmp *.debug.log a.out
 
 spotless: clean
@@ -166,8 +165,17 @@ verify: $(TMP_LIBDIR)/testsuite.lpc
 verbose_verify: $(TMP_LIBDIR)/testsuite.lpc
 	./ulpc -m $(TMP_LIBDIR)/master.lpc $(TMP_LIBDIR)/testsuite.lpc --verbose
 
+gdb_verify: $(TMP_LIBDIR)/testsuite.lpc
+	echo >.gdbinit handle SIGUSR1 nostop noprint pass
+	echo >>.gdbinit run -m $(TMP_LIBDIR)/master.lpc $(TMP_LIBDIR)/testsuite.lpc -v -v -f
+	gdb ./ulpc
+ 
+run_hilfe:
+	./ulpc -m $(TMP_LIBDIR)/master.lpc $(TMP_BINDIR)/hilfe
+ 
+
 depend: language.c
-	gcc -MM $(PREFLAGS) *.c $(SRCDIR)/*.c >$(SRCDIR)/dependencies
+	gcc -MM $(PREFLAGS) *.c $(SRCDIR)/*.c | sed 's;$(SRCDIR)/;;g' | sed 's;\./;;g' >$(SRCDIR)/dependencies
 	cat $(SRCDIR)/Makefile.in.src $(SRCDIR)/dependencies > $(SRCDIR)/Makefile.in
 	config.status
 	for a in $(MODULES) ; do ( cd $$a ; ${MAKE} $(MAKE_FLAGS) depend ) ; done
diff --git a/src/README b/src/README
index a4cc33baa5..022d26d452 100644
--- a/src/README
+++ b/src/README
@@ -51,4 +51,4 @@ bug to hubbe@lysator.liu.se and include the following:
   o or, if you found the error and corrected it, just send me the bugfix along
     with a description of what you did and why.
 
-  /Hubbe
+  /Fredrik Hubinette
diff --git a/src/add_efun.c b/src/add_efun.c
index 43240652f5..c053053505 100644
--- a/src/add_efun.c
+++ b/src/add_efun.c
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #include <stdlib.h>
 #include "add_efun.h"
 #include "macros.h"
diff --git a/src/add_efun.h b/src/add_efun.h
index cdb129d359..f27b34a2c2 100644
--- a/src/add_efun.h
+++ b/src/add_efun.h
@@ -1,8 +1,14 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #ifndef ADD_EFUN_H
 #define ADD_EFUN_H
 
 #include "svalue.h"
 #include "hashtable.h"
+#include "las.h" /* For OPT_SIDE_EFFECT etc. */
 
 struct efun
 {
diff --git a/src/array.c b/src/array.c
index d953af505e..0afb0ade87 100644
--- a/src/array.c
+++ b/src/array.c
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #include "global.h"
 #include "svalue.h"
 #include "array.h"
diff --git a/src/array.h b/src/array.h
index cb0304e1b1..9cd029f2f5 100644
--- a/src/array.h
+++ b/src/array.h
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #ifndef ARRAY_H
 #define ARRAY_H
 
diff --git a/src/backend.c b/src/backend.c
index 463f3683f1..8de38d5146 100644
--- a/src/backend.c
+++ b/src/backend.c
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #include <unistd.h>
 #include <errno.h>
 #include <sys/types.h>
@@ -164,6 +169,7 @@ void do_debug(int check_refs)
   if(d_flag>1)
     init_checked();
 #endif
+
   slow_check_stack(0);
   check_all_arrays(0);
   check_all_mappings(0);
@@ -183,6 +189,7 @@ void do_debug(int check_refs)
     exit_checked();
   }
 #endif
+
 }
 #endif
 
@@ -278,11 +285,3 @@ int write_to_stderr(char *a, INT32 len)
   return 1;
 }
 
-void check_signals()
-{
-#ifdef DEBUG
-  if(d_flag>5) do_debug(0);
-#endif
-
-  /* Insert signal check here */
-}
diff --git a/src/backend.h b/src/backend.h
index b276fc5638..9dad1c41cc 100644
--- a/src/backend.h
+++ b/src/backend.h
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #ifndef BACKEND_H
 #define BACKEND_H
 
@@ -6,6 +11,7 @@ typedef void (*callback)(int,void *);
 
 /* Prototypes begin here */
 struct selectors;
+struct callback_list *add_backend_callback(struct array *a);
 void init_backend();
 void set_read_callback(int fd,callback cb,void *data);
 void set_write_callback(int fd,callback cb,void *data);
@@ -16,7 +22,6 @@ void *query_write_callback_data(int fd);
 void do_debug(int check_refs);
 void backend();
 int write_to_stderr(char *a, INT32 len);
-void check_signals();
 /* Prototypes end here */
 
 #endif
diff --git a/src/builtin_efuns.c b/src/builtin_efuns.c
index aa302eabab..33aa6ccf45 100644
--- a/src/builtin_efuns.c
+++ b/src/builtin_efuns.c
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #include "global.h"
 #include "interpret.h"
 #include "svalue.h"
@@ -22,6 +27,10 @@
 #include <crypt.h>
 #endif
 
+#ifdef HAVE_UNISTD_H
+#include <unistd.h>
+#endif
+
 void f_equal(INT32 args)
 {
   int i;
@@ -163,10 +172,21 @@ void f_random(INT32 args)
   pop_n_elems(args-1);
 }
 
+void f_random_seed(INT32 args)
+{
+  if(!args)
+    error("Too few arguments to random_seed()\n");
+  if(sp[-args].type != T_INT) 
+    error("Bad argument 1 to random_seed()\n");
+
+  my_srand(sp[-args].u.integer);
+  pop_n_elems(args-1);
+}
+
 void f_query_num_arg(INT32 args)
 {
   pop_n_elems(args);
-  push_int(fp->args);
+  push_int(fp ? fp->args : 0);
 }
 
 void f_search(INT32 args)
@@ -648,10 +668,15 @@ void f_rusage(INT32 args)
 void f_this_object(INT32 args)
 {
   pop_n_elems(args);
-  sp->u.object=fp->current_object;
-  sp->type=T_OBJECT;
-  fp->current_object->refs++;
-  sp++;
+  if(fp)
+  {
+    sp->u.object=fp->current_object;
+    sp->type=T_OBJECT;
+    fp->current_object->refs++;
+    sp++;
+  }else{
+    push_int(0);
+  }
 }
 
 void f_throw(INT32 args)
@@ -674,6 +699,7 @@ struct callback_list *add_exit_callback(struct array *a)
 
 void f_exit(INT32 args)
 {
+  int i;
   if(args < 1)
     error("Too few arguments to exit.\n");
 
@@ -681,11 +707,14 @@ void f_exit(INT32 args)
     error("Bad argument 1 to exit.\n");
 
   call_and_free_callback_list(& exit_callbacks);
+
+  i=sp[-args].u.integer;
 #define DEALLOCATE_MEMORY
 #ifdef DEALLOCATE_MEMORY
   exit_modules();
 #endif
-  exit(sp[-args].u.integer);
+
+  exit(i);
 }
 
 void f_query_host_name(INT32 args)
@@ -756,15 +785,21 @@ void f_crypt(INT32 args)
 void f_destruct(INT32 args)
 {
   struct object *o;
-  o=fp->current_object;
   if(args)
   {
     if(sp[-args].type != T_OBJECT)
       error("Bad arguments 1 to destruct()\n");
-
+    
     o=sp[-args].u.object;
+  }else{
+    if(!fp)
+      error("Destruct called without argument from callback function.\n");
+	   
+    o=fp->current_object;
   }
   destruct(o);
+  pop_n_elems(args);
+  push_int(0);
 }
 
 void f_indices(INT32 args)
@@ -1187,6 +1222,29 @@ void f_functionp(INT32 args)
   }
 }
 
+void f_sleep(INT32 args)
+{
+  struct timeval timeout;
+  INT32 a,b;
+
+  if(!args) error("Too few arguments to sleep.\n");
+  if(sp[-args].type!=T_INT)
+    error("Bad argument 1 to sleep.\n");
+  a=get_current_time()+sp[-args].u.integer;
+  
+  pop_n_elems(args);
+  while(1)
+  {
+    timeout.tv_usec=0;
+    b=a-get_current_time();
+    if(b<0) break;
+
+    timeout.tv_sec=b;
+    select(0,0,0,0,&timeout);
+    check_signals();
+  }
+}
+
 #ifdef TYPEP
 #undef TYPEP
 #endif
@@ -1254,12 +1312,14 @@ void init_builtin_efuns()
   add_efun("query_host_name",f_query_host_name,"function(:string)",0);
   add_efun("query_num_arg",f_query_num_arg,"function(:int)",OPT_EXTERNAL_DEPEND);
   add_efun("random",f_random,"function(int:int)",OPT_EXTERNAL_DEPEND);
+  add_efun("random_seed",f_random_seed,"function(int:void)",OPT_SIDE_EFFECT);
   add_efun("remove_call_out",f_remove_call_out,"function(function:int)",OPT_SIDE_EFFECT);
   add_efun("replace",f_replace,"function(string,string,string:string)|function(string,string*,string*:string)|function(array,mixed,mixed:array)|function(mapping,mixed,mixed:array)",0);
   add_efun("reverse",f_reverse,"function(int:int)|function(string:string)|function(array:array)",0);
   add_efun("rusage", f_rusage, "function(:int *)",OPT_EXTERNAL_DEPEND);
   add_efun("search",f_search,"function(string,string,void|int:int)|function(array,mixed,void|int:int)|function(mapping,mixed:mixed)",0);
   add_efun("sizeof", f_sizeof, "function(string|list|array|mapping:int)",0);
+  add_efun("sleep", f_sleep, "function(int:void)",OPT_SIDE_EFFECT);
   add_efun("stringp", f_stringp, "function(mixed:int)",0);
   add_efun("sum",f_sum,"function(int ...:int)|function(float ...:float)|function(string,string|int|float ...:string)|function(string,string|int|float ...:string)|function(int|float,string,string|int|float:string)|function(array ...:array)|function(mapping ...:mapping)|function(list...:list)",0);
   add_efun("this_object", f_this_object, "function(:object)",OPT_EXTERNAL_DEPEND);
diff --git a/src/builtin_efuns.h b/src/builtin_efuns.h
index 76c6122763..9b5a8359e9 100644
--- a/src/builtin_efuns.h
+++ b/src/builtin_efuns.h
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #ifndef BUILTIN_EFUNS_H
 #define BUILTIN_EFUNS_H
 
diff --git a/src/call_out.c b/src/call_out.c
index 3cf365e999..53de8d53a0 100644
--- a/src/call_out.c
+++ b/src/call_out.c
@@ -1,4 +1,8 @@
-#include <sys/types.h>
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #include <stdio.h>
 #include "global.h"
 #include "array.h"
@@ -8,7 +12,6 @@
 #include "interpret.h"
 #include "error.h"
 #include "builtin_efuns.h"
-#include "sys/types.h"
 #include "memory.h"
 
 call_out **pending_calls=0;      /* pointer to first busy pointer */
diff --git a/src/call_out.h b/src/call_out.h
index 61b66d569a..2793be77a8 100644
--- a/src/call_out.h
+++ b/src/call_out.h
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #ifndef CALL_OUT_H
 #define CALL_OUT_H
 
diff --git a/src/callback.c b/src/callback.c
index 0cb8fd078f..414b5eb331 100644
--- a/src/callback.c
+++ b/src/callback.c
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #include "macros.h"
 #include "callback.h"
 
diff --git a/src/callback.h b/src/callback.h
index 79c6de2906..ff8fd35afa 100644
--- a/src/callback.h
+++ b/src/callback.h
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #ifndef CALLBACK_H
 #define CALLBACK_H
 
diff --git a/src/config.h b/src/config.h
index 841a32e74d..33ec34fff1 100644
--- a/src/config.h
+++ b/src/config.h
@@ -1,14 +1,17 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #ifndef CONFIG_H
 #define CONFIG_H
 
-#include "machine.h"
-
 /*
  * Define DEBUG and be sure to compile with -g if you want to debug uLPC
  * with DEBUG defined debugging becomes much easier.
  */
 
-/* #define DEBUG */
+#undef DEBUG
 
 /*
  * Define the evaluator stack size, used for just about everything.
@@ -25,12 +28,12 @@
  * Max number of local variables in a function.
  * Currently there is no support for more than 256
  */
-#define MAX_LOCAL	128
+#define MAX_LOCAL	256
 
 /*
  * Define the size of the shared string hash table.
  */
-#define	HTABLE_SIZE 117
+#define	HTABLE_SIZE 4711
 
 /*
  * Define the size of the cache that is used for method lookup.
@@ -46,4 +49,7 @@
 #define YYDEBUG 1
 #endif
 
+/* Not parently used */
+#define GC_TIME 60
+
 #endif
diff --git a/src/configure.in b/src/configure.in
index c118219cd2..1a6b3cd3f3 100644
--- a/src/configure.in
+++ b/src/configure.in
@@ -52,6 +52,31 @@ fi
 AC_PROG_CPP
 AC_PROG_RANLIB
 AC_SET_MAKE
+AC_PATH_PROG(uname_prog,uname,no)
+
+# We need some special hacks when running slowaris
+AC_MSG_CHECKING(operating system)
+AC_CACHE_VAL(lpc_cv_sys_os,
+[
+if test "$uname_prog" != "no"; then
+  lpc_cv_sys_os="`uname`"
+
+  if test "$lpc_cv_sys_os" = "SunOS"; then
+    case "`uname -r`" in
+      5.*) lpc_cv_sys_os="Solaris";
+    esac
+  fi
+else
+  lpc_cv_sys_os="Not Solaris"
+fi
+])
+AC_MSG_RESULT($lpc_cv_sys_os)
+
+if test "$lpc_cv_sys_os" = "Solaris"; then
+  AC_DEFINE(SOLARIS)
+  LIBS="$LIBS -lthread"
+fi
+
 
 AC_MSG_CHECKING(first yacc define)
 AC_CACHE_VAL(lpc_cv_yacc_first,
@@ -109,9 +134,36 @@ fi
 LIBOBJS="${OLD_LIBOBJS}"
 
 
-AC_HAVE_FUNCS(memset memcpy memchr strchr strrchr fchmod getrusage \
- strcspn crypt _crypt getwd getcwd strtod strtok getenv vfprintf bzero bcopy \
- strtol index rindex vsprintf clock times setlocale strcoll getrlimit  setrlimit)
+AC_HAVE_FUNCS(
+ _crypt \
+ bcopy \
+ bzero \
+ clock \
+ crypt \
+ fchmod \
+ getcwd \
+ getenv \
+ getrlimit \
+ getrusage \
+ getwd \
+ index \
+ memchr \
+ memcpy \
+ memset \
+ rindex \
+ setlocale \
+ setrlimit \
+ strcasecmp \
+ strchr \
+ strcspn \
+ strrchr \
+ strtod \
+ strtok \
+ strtol \
+ times \
+ vfprintf \
+ vsprintf \
+)
 
 define(MY_CHECK_HEADERS,
 [
@@ -210,6 +262,7 @@ AC_ALLOCA
 AC_CONST
 AC_INLINE
 
+AC_CHECK_LIB(PW, alloca)
 AC_CHECK_LIB(m, floor)
 AC_CHECK_LIB(socket, socket)
 
@@ -313,7 +366,7 @@ char *a="foo bar gazonk";
 char *b="foo";
 char *c="bar";
 char *d="gazonk";
-void main()
+int main()
 {
   if(memmem(b,strlen(b),a,strlen(a))!=a ||
      memmem(c,strlen(c),a,strlen(a))!=(a+4) ||
@@ -332,17 +385,40 @@ else
   AC_MSG_RESULT(no)
 fi
 
+AC_MSG_CHECKING(for working strcoll)
+AC_CACHE_VAL(lpc_cv_func_strcoll,
+[
+AC_TRY_RUN([
+#include <string.h>
+int main()
+{
+  if(strcoll("a","b")< 0 &&
+     strcoll("a","a")==0 &&
+     strcoll("b","a")> 0)
+    exit(0);
+  exit(1);
+}
+],lpc_cv_func_strcoll=yes,lpc_cv_func_strcoll=no)])
+
+if test "$lpc_cv_func_strcoll" = yes; then
+  AC_MSG_RESULT(yes)
+  AC_DEFINE(HAVE_STRCOLL)
+else
+  AC_MSG_RESULT(no)
+fi
+
+
 AC_MSG_CHECKING(for working memmove)
 AC_CACHE_VAL(lpc_cv_func_memmove,
 [
 AC_TRY_RUN([
 #include <string.h>
 char buf[100];
-void main()
+int main()
 {
   strcpy(buf,"foo bar gazonk elefantsnabel.");
   if(strcmp(buf,"foo bar gazonk elefantsnabel.")) exit(1);
-  memmove(buf,buf+1,8);
+  memmove(buf,buf+1,7);
   if(strcmp(buf,"oo bar  gazonk elefantsnabel.")) exit(1);
   memmove(buf+1,buf+1,9);
   if(strcmp(buf,"oo bar  gazonk elefantsnabel.")) exit(1);
@@ -363,7 +439,7 @@ AC_MSG_CHECKING(how to extract an unsigned char)
 AC_CACHE_VAL(lpc_cv_method_extract_uchar,
 [
 AC_TRY_RUN([
-void main()
+int main()
 {
   char i,*p;
   i=-10;
@@ -385,7 +461,7 @@ AC_MSG_CHECKING(how to extract a signed char)
 AC_CACHE_VAL(lpc_cv_method_extract_char,
 [
 AC_TRY_RUN([
-void main()
+int main()
 {
   char i,*p;
   i=-10;
@@ -426,7 +502,7 @@ int main()
 #if !defined(RLIMIT_NOFILE) && defined(RLIMIT_OFILE)
 #define RLIMIT_NOFILE RLIMIT_OFILE
 #endif
-#if defined(HAVE_GETRLIMIT) && defined(RLIMIT_NOFILE)
+#if defined(HAVE_SETRLIMIT) && defined(RLIMIT_NOFILE)
   struct rlimit lim;
 
   if(getrlimit(RLIMIT_NOFILE,&lim))
@@ -613,7 +689,7 @@ MODULE_OBJS=
 module_names=
 for a in `(cd $srcdir/modules ; echo *)`
 do
-  if test "$a" != "CVS" -a "$a" != "RCS"; then
+  if test "$a" != "CVS" -a "$a" != "RCS" ; then
       if test -d "$srcdir/modules/$a" ; then
       dirs="$dirs modules/$a"
       MODULE_OBJS="$MODULE_OBJS modules/$a/$a.a"
diff --git a/src/debug.c b/src/debug.c
index 781efec3ec..c11c55f082 100644
--- a/src/debug.c
+++ b/src/debug.c
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #include "global.h"
 #include "types.h"
 #include "memory.h"
diff --git a/src/debug.h b/src/debug.h
index 3f666eaf14..7e482708e7 100644
--- a/src/debug.h
+++ b/src/debug.h
@@ -1,6 +1,13 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #ifndef DEBUG_H
 #define DEBUG_H
+
 #include "types.h"
+
 /* Prototypes begin here */
 struct marker;
 struct marker_chunk;
diff --git a/src/docode.c b/src/docode.c
index fd555482ca..69a098b1ea 100644
--- a/src/docode.c
+++ b/src/docode.c
@@ -1,7 +1,11 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #include "global.h"
 #include <stdlib.h>
 #include <stdio.h>
-#include "config.h"
 #include "las.h"
 #include "program.h"
 #include "language.h"
diff --git a/src/docode.h b/src/docode.h
index b647a70bfe..78bf2f8230 100644
--- a/src/docode.h
+++ b/src/docode.h
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #ifndef DOCODE_H
 #define DOCODE_H
 
diff --git a/src/dynamic_buffer.c b/src/dynamic_buffer.c
index 232d2ac1c8..4e5871699a 100644
--- a/src/dynamic_buffer.c
+++ b/src/dynamic_buffer.c
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #include "global.h"
 #include "dynamic_buffer.h"
 #include "stralloc.h"
diff --git a/src/dynamic_buffer.h b/src/dynamic_buffer.h
index 15eac8c769..042670bfe4 100644
--- a/src/dynamic_buffer.h
+++ b/src/dynamic_buffer.h
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #ifndef DYNAMIC_BUFFER_H
 #define DYNAMIC_BUFFER_H
 
diff --git a/src/efun.h b/src/efun.h
index 2d04cbb552..313617231f 100644
--- a/src/efun.h
+++ b/src/efun.h
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #ifndef EFUN_H
 #define EFUN_H
 
diff --git a/src/error.c b/src/error.c
index 3a8e1eb33d..c882590a9d 100644
--- a/src/error.c
+++ b/src/error.c
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #include <stdio.h>
 #include "global.h"
 #include "macros.h"
@@ -9,7 +14,8 @@
 #include "object.h"
 
 char *automatic_fatal;
-JMP_BUF *recoveries;
+JMP_BUF *recoveries=0;
+ONERROR *onerror_stack=0;
 
 jmp_buf *init_recovery(JMP_BUF *r)
 {
@@ -17,6 +23,7 @@ jmp_buf *init_recovery(JMP_BUF *r)
   r->sp=sp;
   r->mark_sp=mark_sp;
   r->previous=recoveries;
+  r->onerror=onerror_stack;
   recoveries=r;
   return & r->recovery;
 }
@@ -46,6 +53,16 @@ void throw()
   pop_n_elems(sp - recoveries->sp);
   mark_sp = recoveries->mark_sp;
 
+  while(recoveries->onerror != onerror_stack)
+  {
+#ifdef DEBUG
+    if(!onerror_stack)
+      fatal("Popped out of onerror stack!\n");
+#endif    
+    (*onerror_stack->func)(onerror_stack->arg);
+    onerror_stack=onerror_stack->previous;
+  }
+
   longjmp(recoveries->recovery,1);
 }
 
diff --git a/src/error.h b/src/error.h
index 81980d7fcc..616925f0d7 100644
--- a/src/error.h
+++ b/src/error.h
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #ifndef ERROR_H
 #define ERROR_H
 
@@ -7,10 +12,17 @@
 #include "svalue.h"
 
 
-typedef void (*function)(INT32);
+typedef void (*error_call)(void *);
 
 struct frame;
 
+typedef struct ONERROR
+{
+  struct ONERROR *previous;
+  error_call func;
+  void *arg;
+} ONERROR;
+
 typedef struct JMP_BUF
 {
   struct JMP_BUF *previous;
@@ -18,8 +30,10 @@ typedef struct JMP_BUF
   struct frame *fp;
   struct svalue *sp;
   struct svalue **mark_sp;
+  ONERROR *onerror;
 } JMP_BUF;
 
+extern ONERROR *onerror_stack;
 extern JMP_BUF *recoveries;
 extern struct svalue throw_value;
 extern char *automatic_fatal;
@@ -27,6 +41,16 @@ extern char *automatic_fatal;
 #define SETJMP(X) setjmp((init_recovery(&X)[0]))
 #define UNSETJMP(X) recoveries=X.previous;
 
+#define SET_ONERROR(X,Y,Z) \
+  do{ \
+     X.func=(error_call)(Y); \
+     X.arg=(void *)(Z); \
+     X.previous=onerror_stack; \
+     onerror_stack=&X; \
+  }while(0)
+
+#define UNSET_ONERROR(X) onerror_stack=X.previous
+
 jmp_buf *init_recovery(JMP_BUF *r);
 int fix_recovery(int i, JMP_BUF *r);
 void throw() ATTRIBUTE((noreturn));
diff --git a/src/fd_control.c b/src/fd_control.c
index 31d9aa1057..d2fd418a44 100644
--- a/src/fd_control.c
+++ b/src/fd_control.c
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #include <sys/types.h>
 #include <sys/ioctl.h>
 #include <sys/socket.h>
diff --git a/src/fd_control.h b/src/fd_control.h
index 243aa6c5f5..3d78eb3c5d 100644
--- a/src/fd_control.h
+++ b/src/fd_control.h
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #ifndef FD_CONTROL_H
 #define FD_CONTROL_H
 
diff --git a/src/fsort.c b/src/fsort.c
index 19a4979c90..4924eea86f 100644
--- a/src/fsort.c
+++ b/src/fsort.c
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 /* fsort- a smarter quicksort /Hubbe */
 /* Optimized for minimum amount of compares */
 
diff --git a/src/fsort.h b/src/fsort.h
index d861283bda..a4e7db3f92 100644
--- a/src/fsort.h
+++ b/src/fsort.h
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #ifndef FSORT_H
 #define FSORT_H
 
diff --git a/src/global.h b/src/global.h
index 67a335c3ab..c5d721253d 100644
--- a/src/global.h
+++ b/src/global.h
@@ -1,5 +1,13 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #ifndef GLOBAL_H
 #define GLOBAL_H
+
+#define POSIX_SOURCE
+
 /*
  * Some structure forward declarations are needed.
  */
@@ -17,8 +25,29 @@ struct object;
 struct array;
 struct svalue;
 
+#include "machine.h"
 #include "config.h"
 
+/* AIX requires this to be the first thing in the file.  */
+#ifdef __GNUC__
+# ifdef alloca
+#  undef alloca
+# endif
+# define alloca __builtin_alloca
+#else
+# if HAVE_ALLOCA_H
+#  include <alloca.h>
+# else
+#  ifdef _AIX
+#pragma alloca
+#  else
+#   ifndef alloca /* predefined by HP cc +Olibcalls */
+char *alloca ();
+#   endif
+#  endif
+# endif
+#endif
+
 #include <stdio.h>
 
 #ifdef HAVE_STDLIB_H
diff --git a/src/hashtable.c b/src/hashtable.c
index 32fee0d19a..c9d0579a27 100644
--- a/src/hashtable.c
+++ b/src/hashtable.c
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #include <stdlib.h>
 #include "hashtable.h"
 #include "stralloc.h"
diff --git a/src/hashtable.h b/src/hashtable.h
index 24ec927fbb..caef3e0d90 100644
--- a/src/hashtable.h
+++ b/src/hashtable.h
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #ifndef HASHTABLE_H
 #define HASHTABLE_H
 
diff --git a/src/interpret.c b/src/interpret.c
index 393fc05ed8..5a88707f1e 100644
--- a/src/interpret.c
+++ b/src/interpret.c
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #include "global.h"
 #include "interpret.h"
 #include "object.h"
@@ -17,6 +22,7 @@
 #include "main.h"
 #include "lex.h"
 #include "builtin_efuns.h"
+#include "lpc_signal.h"
 
 #define TRACE_LEN 256
 struct svalue evaluator_stack[EVALUATOR_STACK_SIZE];
@@ -291,7 +297,7 @@ void dump_backlog()
 	      (long)backlog[e].arg);
     }
   }while(e!=backlogp);
-};
+}
 
 #endif
 
@@ -865,7 +871,7 @@ void apply_low(struct object *o, int fun, int args)
 
   ref = p->identifier_references + fun;
 #ifdef DEBUG
-  if(ref->inherit_offset<0 || ref->inherit_offset>=p->num_inherits)
+  if(ref->inherit_offset>=p->num_inherits)
     fatal("Inherit offset out of range in program.\n");
 #endif
 
@@ -937,7 +943,11 @@ void apply_low(struct object *o, int fun, int args)
 
   if(function->flags & IDENTIFIER_C_FUNCTION)
   {
+#if 0
     function->func.c_fun(args);
+#else
+    (*function->func.c_fun)(args);
+#endif
   }else{
     int num_args;
     int num_locals;
@@ -1144,9 +1154,23 @@ void strict_apply_svalue(struct svalue *s, INT32 args)
   {
   case T_FUNCTION:
     if(s->subtype == -1)
+    {
+      struct svalue *expected_sp=sp-args+1;
       (*(s->u.efun->function))(args);
-    else
+      if(sp > expected_sp)
+      {
+	pop_n_elems(sp-expected_sp);
+      }
+      else if(sp < expected_sp)
+      {
+	push_int(0);
+      }
+#ifdef DEBUG
+      if(sp < expected_sp) fatal("Stack underflow!\n");
+#endif
+    }else{
       apply_low(s->u.object, s->subtype, args);
+    }
     break;
 
   case T_ARRAY:
diff --git a/src/interpret.h b/src/interpret.h
index f9234a7f66..6ef70741a4 100644
--- a/src/interpret.h
+++ b/src/interpret.h
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #ifndef INTERPRET_H
 #define INTERPRET_H
 
diff --git a/src/language.y b/src/language.y
index f24127310a..fdcbf16205 100644
--- a/src/language.y
+++ b/src/language.y
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 %pure_parser
 
 /*
@@ -15,7 +20,7 @@
 
 %token F_INDEX F_INDIRECT
 %token F_LTOSVAL F_LTOSVAL2
-%token F_WRITE_OPCODE F_PUSH_ARRAY 
+%token F_PUSH_ARRAY 
 %token F_RANGE F_COPY_VALUE
 
 /*
@@ -269,6 +274,13 @@ def: modifiers type_or_error optional_stars F_IDENTIFIER '(' arguments ')'
      /* construct the function type */
      push_finished_type(local_variables->current_type);
      while($3--) push_type(T_ARRAY);
+
+     if(local_variables->current_return_type)
+       free_string(local_variables->current_return_type);
+     local_variables->current_return_type=pop_type();
+
+     push_finished_type(local_variables->current_return_type);
+
      e=$6-1;
      if(varargs)
      {
@@ -333,6 +345,11 @@ def: modifiers type_or_error optional_stars F_IDENTIFIER '(' arguments ')'
 		       IDENTIFIER_LPC_FUNCTION | vargs,
 		       &tmp);
      }
+     if(local_variables->current_return_type)
+     {
+       free_string(local_variables->current_return_type);
+       local_variables->current_return_type=0;
+     }
      free_all_local_names();
      free_string($4);
      free_string($<string>8);
@@ -707,6 +724,11 @@ case: F_CASE comma_expr ':'
 
 return: F_RETURN
 	{
+	  if(!match_types(local_variables->current_return_type,
+			  void_type_string))
+	  {
+	    yyerror("Must return a value for a non-void function.");
+	  }
           $$=mknode(F_RETURN,mkintnode(0),0);
 	}
       | F_RETURN comma_expr
@@ -1087,6 +1109,7 @@ static void push_locals()
   struct locals *l;
   l=ALLOC_STRUCT(locals);
   l->current_type=0;
+  l->current_return_type=0;
   l->next=local_variables;
   local_variables=l;
   local_variables->current_number_of_locals=0;
@@ -1099,6 +1122,8 @@ static void pop_locals()
   l=local_variables->next;
   if(local_variables->current_type)
     free_string(local_variables->current_type);
+  if(local_variables->current_return_type)
+    free_string(local_variables->current_return_type);
   free((char *)local_variables);
 
   local_variables=l;
diff --git a/src/las.c b/src/las.c
index e418c9e427..a00bfef91d 100644
--- a/src/las.c
+++ b/src/las.c
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #include <setjmp.h>
 #include "global.h"
 #include "language.h"
@@ -905,8 +910,21 @@ void fix_type_field(node *n)
 
   switch(n->token)
   {
-  case F_LOCAL:
-  case F_GLOBAL:
+  case F_LAND:
+  case F_LOR:
+    if(!match_types(CAR(n)->type,mixed_type_string))
+      yyerror("Bad conditional expression.\n");
+
+    if(!match_types(CDR(n)->type,mixed_type_string))
+      yyerror("Bad conditional expression.\n");
+
+    if(CAR(n)->type == CDR(n)->type)
+    {
+      copy_shared_string(n->type,CAR(n)->type);
+    }else{
+      copy_shared_string(n->type,mixed_type_string);
+    }
+    break;
 
   case F_INDEX:
     type_a=CAR(n)->type;
@@ -934,10 +952,13 @@ void fix_type_field(node *n)
       copy_shared_string(n->type, mixed_type_string);
     }
     free_string(s);
-    return;
+    break;
   }
 
   case '?':
+    if(!match_types(CAR(n)->type,mixed_type_string))
+      yyerror("Bad conditional expression.\n");
+
     if(!CADR(n) || !CDDR(n))
     {
       copy_shared_string(n->type,void_type_string);
@@ -951,24 +972,71 @@ void fix_type_field(node *n)
     }
 
     copy_shared_string(n->type,mixed_type_string);
-    return;
+    break;
+
+  case F_RETURN:
+    if(local_variables &&
+       local_variables->current_return_type &&
+       !match_types(local_variables->current_return_type,CAR(n)->type) &&
+       !(
+	 local_variables->current_return_type==void_type_string &&
+	 CAR(n)->token == F_CONSTANT &&
+	 IS_ZERO(& CAR(n)->u.sval)
+	 )
+       )
+    {
+      yyerror("Wrong return type.");
+    }
+
+    /* Fall through */
 
   case F_INC_LOOP:
   case F_DEC_LOOP:
   case F_DEC_NEQ_LOOP:
   case F_INC_NEQ_LOOP:
   case F_CASE:
-  case F_DO:
-  case F_FOR:
-  case F_RETURN:
   case F_CONTINUE:
   case F_BREAK:
     copy_shared_string(n->type,void_type_string);
-    return;
+    break;
+
+  case F_DO:
+    if(!match_types(CDR(n)->type,mixed_type_string))
+      yyerror("Bad conditional expression do - while().\n");
+    copy_shared_string(n->type,void_type_string);
+    break;
+    
+  case F_FOR:
+    if(!match_types(CAR(n)->type,mixed_type_string))
+      yyerror("Bad conditional expression for().\n");
+    copy_shared_string(n->type,void_type_string);
+    break;
+
+  case F_SWITCH:
+    if(!match_types(CAR(n)->type,mixed_type_string))
+      yyerror("Bad switch expression.\n");
+    copy_shared_string(n->type,void_type_string);
+    break;
 
   case F_CONSTANT:
     n->type = get_type_of_svalue(& n->u.sval);
-    return;
+    break;
+
+    /* Not yet checked, but we know what they should return */
+  case F_NOT:
+  case F_LT:
+  case F_LE:
+  case F_EQ:
+  case F_NE:
+  case F_GT:
+  case F_GE:
+  case F_MOD:
+  case F_XOR:
+  case F_LSH:
+  case F_RSH:
+  case F_COMPL:
+    copy_shared_string(n->type,int_type_string);
+    break;
 
   case F_ARG_LIST:
     if(!CAR(n) || CAR(n)->type==void_type_string)
diff --git a/src/las.h b/src/las.h
index 9c8209adf1..e4ecf9ad67 100644
--- a/src/las.h
+++ b/src/las.h
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #ifndef LAS_H
 #define LAS_H
 
@@ -19,6 +24,7 @@ struct locals
 {
   struct locals *next;
   struct lpc_string *current_type;
+  struct lpc_string *current_return_type;
   int current_number_of_locals;
   struct local_variable variable[MAX_LOCAL];
 };
diff --git a/src/lex.c b/src/lex.c
index 0f315e3da7..8368029a90 100644
--- a/src/lex.c
+++ b/src/lex.c
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #include "global.h"
 #include "language.h"
 #include "array.h"
@@ -60,6 +65,8 @@ void exit_lex()
     }
     if(local_variables->current_type)
       free_string(local_variables->current_type);
+    if(local_variables->current_return_type)
+      free_string(local_variables->current_return_type);
     l=local_variables->next;
     free((char *)local_variables);
     local_variables=l;
@@ -206,7 +213,6 @@ struct keyword instr_names[]=
 { "switch",		F_SWITCH },
 { "unary minus",	F_NEGATE },
 { "while",		F_WHILE },	
-{ "write opcode",	F_WRITE_OPCODE },
 { "x++ and pop",	F_INC_AND_POP },	
 { "x++",		F_POST_INC },	
 { "x-- and pop",	F_DEC_AND_POP },	
@@ -1919,6 +1925,7 @@ static void start_new()
   local_variables->next=0;
   local_variables->current_number_of_locals=0;
   local_variables->current_type=0;
+  local_variables->current_return_type=0;
   simple_add_define("__uLPC__", "1",0);
   
   for (tmpf=lpc_predefs; tmpf; tmpf=tmpf->next)
@@ -1971,6 +1978,9 @@ void end_new_file()
     if(local_variables->current_type)
       free_string(local_variables->current_type);
 
+    if(local_variables->current_return_type)
+      free_string(local_variables->current_return_type);
+
     l=local_variables->next;
     free((char *)local_variables);
     local_variables=l;
diff --git a/src/lex.h b/src/lex.h
index ae1ef73e91..10c1054cec 100644
--- a/src/lex.h
+++ b/src/lex.h
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #ifndef LEX_H
 #define LEX_H
 
@@ -24,7 +29,7 @@ extern INT32 current_line;
 extern INT32 old_line;
 extern INT32 total_lines;
 extern INT32 nexpands;
-int pragma_all_inline;          /* inline all possible inlines */
+extern int pragma_all_inline;          /* inline all possible inlines */
 extern struct inputstate *istate;
 
 extern struct lpc_predef_s * lpc_predefs;
diff --git a/src/list.c b/src/list.c
index 11e53ef178..99e4d12b1c 100644
--- a/src/list.c
+++ b/src/list.c
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #include <stdlib.h>
 #include "global.h"
 #include "array.h"
diff --git a/src/list.h b/src/list.h
index b9743ebd54..da66aaee93 100644
--- a/src/list.h
+++ b/src/list.h
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #ifndef LIST_H
 #define LIST_H
 
diff --git a/src/lpc_signal.c b/src/lpc_signal.c
new file mode 100644
index 0000000000..990cde4f18
--- /dev/null
+++ b/src/lpc_signal.c
@@ -0,0 +1,320 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
+#include "global.h"
+#include "svalue.h"
+#include "interpret.h"
+#include "stralloc.h"
+#include "add_efun.h"
+#include "macros.h"
+#include "backend.h"
+#include "unistd.h"
+#include <signal.h>
+
+#ifdef NSIG
+#define MAX_SIGNALS NSIG
+#else
+#define MAX_SIGNALS 256
+#endif
+
+#define SIGNAL_BUFFER 16384
+
+static struct svalue signal_callbacks[MAX_SIGNALS];
+
+static unsigned char sigbuf[SIGNAL_BUFFER];
+static int firstsig, lastsig;
+
+struct sigdesc
+{
+  int signum;
+  char *signame;
+};
+
+
+/*
+ * All known signals
+ */
+
+static struct sigdesc signal_desc []={
+#ifdef SIGHUP
+  { SIGHUP, "SIGHUP" },
+#endif
+#ifdef SIGINT
+  { SIGINT, "SIGINT" },
+#endif
+#ifdef SIGQUIT
+  { SIGQUIT, "SIGQUIT" },
+#endif
+#ifdef SIGILL
+  { SIGILL, "SIGILL" },
+#endif
+#ifdef SIGTRAP
+  { SIGTRAP, "SIGTRAP" },
+#endif
+#ifdef SIGABRT
+  { SIGABRT, "SIGABRT" },
+#endif
+#ifdef SIGIOT
+  { SIGIOT, "SIGIOT" },
+#endif
+#ifdef SIGBUS
+  { SIGBUS, "SIGBUS" },
+#endif
+#ifdef SIGFPE
+  { SIGFPE, "SIGFPE" },
+#endif
+#ifdef SIGKILL
+  { SIGKILL, "SIGKILL" },
+#endif
+#ifdef SIGUSR1
+  { SIGUSR1, "SIGUSR1" },
+#endif
+#ifdef SIGSEGV
+  { SIGSEGV, "SIGSEGV" },
+#endif
+#ifdef SIGUSR2
+  { SIGUSR2, "SIGUSR2" },
+#endif
+#ifdef SIGPIPE
+  { SIGPIPE, "SIGPIPE" },
+#endif
+#ifdef SIGALRM
+  { SIGALRM, "SIGALRM" },
+#endif
+#ifdef SIGTERM
+  { SIGTERM, "SIGTERM" },
+#endif
+#ifdef SIGSTKFLT
+  { SIGSTKFLT, "SIGSTKFLT" },
+#endif
+#ifdef SIGCHLD
+  { SIGCHLD, "SIGCHLD" },
+#endif
+#ifdef SIGCLD
+  { SIGCLD, "SIGCLD" },
+#endif
+#ifdef SIGCONT
+  { SIGCONT, "SIGCONT" },
+#endif
+#ifdef SIGSTOP
+  { SIGSTOP, "SIGSTOP" },
+#endif
+#ifdef SIGTSTP
+  { SIGTSTP, "SIGTSTP" },
+#endif
+#ifdef SIGTSTP
+  { SIGTSTP, "SIGTSTP" },
+#endif
+#ifdef SIGTTIN
+  { SIGTTIN, "SIGTTIN" },
+#endif
+#ifdef SIGTTIO
+  { SIGTTIO, "SIGTTIO" },
+#endif
+#ifdef SIGURG
+  { SIGURG, "SIGURG" },
+#endif
+#ifdef SIGXCPU
+  { SIGXCPU, "SIGXCPU" },
+#endif
+#ifdef SIGXFSZ
+  { SIGXFSZ, "SIGXFSZ" },
+#endif
+#ifdef SIGVTALRM
+  { SIGVTALRM, "SIGVTALRM" },
+#endif
+#ifdef SIGPROF
+  { SIGPROF, "SIGPROF" },
+#endif
+#ifdef SIGWINCH
+  { SIGWINCH, "SIGWINCH" },
+#endif
+#ifdef SIGIO
+  { SIGIO, "SIGIO" },
+#endif
+#ifdef SIGPOLL
+  { SIGPOLL, "SIGPOLL" },
+#endif
+#ifdef SIGLOST
+  { SIGLOST, "SIGLOST" },
+#endif
+#ifdef SIGPWR
+  { SIGPWR, "SIGPWR" },
+#endif
+#ifdef SIGUNUSED
+  { SIGUNUSED, "SIGUNUSED" },
+#endif
+  { -1, "END" } /* Notused */
+};
+
+static RETSIGTYPE receive_signal(int signum)
+{
+  int tmp;
+  tmp=firstsig+1;
+  if(tmp == SIGNAL_BUFFER) tmp=0;
+  if(tmp != lastsig)
+    sigbuf[firstsig=tmp]=signum;
+  signal(signum, receive_signal);
+}
+
+void check_signals()
+{
+  extern int d_flag;
+#ifdef DEBUG
+  if(d_flag>5) do_debug(0);
+#endif
+
+  if(firstsig != lastsig)
+  {
+    int tmp=firstsig;
+
+    while(lastsig != tmp)
+    {
+      if(++lastsig == SIGNAL_BUFFER) lastsig=0;
+
+      push_int(sigbuf[lastsig]);
+      apply_svalue(signal_callbacks + sigbuf[lastsig], 1);
+      pop_stack();
+    }
+  }
+}
+
+/* Get the name of a signal given the number */
+static char *signame(int sig)
+{
+  int e;
+  for(e=0;e<NELEM(signal_desc)-1;e++)
+  {
+    if(sig==signal_desc[e].signum)
+      return signal_desc[e].signame;
+  }
+  return 0;
+}
+
+/* Get the signal's number given the name */
+static int signum(char *name)
+{
+  int e;
+  for(e=0;e<NELEM(signal_desc)-1;e++)
+  {
+    if(!strcasecmp(name,signal_desc[e].signame) ||
+       !strcasecmp(name,signal_desc[e].signame+3) )
+      return signal_desc[e].signum;
+  }
+  return -1;
+}
+
+static void f_signal(int args)
+{
+  int signum;
+
+  if(args < 1)
+    error("Too few arguments to signal()\n");
+
+  if(args == 1)
+  {
+    push_int(0);
+    args++;
+  }
+  
+  if(sp[-args].type != T_INT)
+  {
+    error("Bad argument 1 to signal()\n");
+  }
+
+  signum=sp[-args].u.integer;
+  if(signum <0 || signum >=MAX_SIGNALS)
+  {
+    error("Signal out of range.\n");
+  }
+
+  assign_svalue(signal_callbacks + signum, sp+1-args);
+  if(IS_ZERO(sp+1-args))
+  {
+    /* Not good enough, we need the uLPC default */
+    signal(signum,SIG_DFL);
+  }else{
+    signal(signum,receive_signal);
+  }
+  pop_n_elems(args);
+}
+
+static void f_signum(int args)
+{
+  int i;
+  if(args < 1)
+    error("Too few arguments to signum()\n");
+
+  if(sp[-args].type != T_STRING)
+    error("Bad argument 1 to signum()\n");
+
+  i=signum(sp[-args].u.string->str);
+  pop_n_elems(args);
+  push_int(i);
+}
+
+static void f_signame(int args)
+{
+  char *n;
+  if(args < 1)
+    error("Too few arguments to signame()\n");
+
+  if(sp[-args].type != T_INT)
+    error("Bad argument 1 to signame()\n");
+
+  n=signame(sp[-args].u.integer);
+  pop_n_elems(args);
+  if(n)
+    push_string(make_shared_string(n));
+  else
+    push_int(0);
+}
+
+static void f_kill(INT32 args)
+{
+  if(args < 2)
+    error("Too few arguments to kill().\n");
+  if(sp[-args].type != T_INT)
+    error("Bad argument 1 to kill().\n");
+  if(sp[1-args].type != T_INT)
+    error("Bad argument 1 to kill().\n");
+
+  sp[-args].u.integer=!kill(sp[-args].u.integer,sp[1-args].u.integer);
+  pop_n_elems(args-1);
+}
+
+static void f_getpid(INT32 args)
+{
+  pop_n_elems(args);
+  push_int(getpid());
+}
+
+void init_signals()
+{
+  int e;
+
+  for(e=0;e<MAX_SIGNALS;e++)
+    signal_callbacks[e].type=T_INT;
+
+  firstsig=lastsig=sigbuf[0];
+
+  add_efun("signal",f_signal,"function(int,mixed|void:void)",OPT_SIDE_EFFECT);
+  add_efun("kill",f_kill,"function(int,int:int)",OPT_SIDE_EFFECT);
+  add_efun("signame",f_signame,"function(int:string)",0);
+  add_efun("signum",f_signum,"function(string:int)",0);
+  add_efun("getpid",f_getpid,"function(:int)",0);
+}
+
+void exit_signals()
+{
+  int e;
+  for(e=0;e<MAX_SIGNALS;e++)
+  {
+    free_svalue(signal_callbacks+e);
+    signal_callbacks[e].type=T_INT;
+  }
+}
+
+
diff --git a/src/lpc_signal.h b/src/lpc_signal.h
new file mode 100644
index 0000000000..aa005e2844
--- /dev/null
+++ b/src/lpc_signal.h
@@ -0,0 +1,16 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
+#ifndef SIGNAL_H
+#define SIGNAL_H
+
+/* Prototypes begin here */
+struct sigdesc;
+void check_signals();
+void init_signals();
+void exit_signals();
+/* Prototypes end here */
+
+#endif
diff --git a/src/lpc_types.c b/src/lpc_types.c
index e056ee702d..90edb928a4 100644
--- a/src/lpc_types.c
+++ b/src/lpc_types.c
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #include "global.h"
 #include <ctype.h>
 #include "svalue.h"
@@ -552,7 +557,7 @@ int match_types(struct lpc_string *a,struct lpc_string *b)
 }
 
 
-#define STACK_SIZE 10000
+#define STACK_SIZE 100000
 static unsigned char type_stack[STACK_SIZE];
 static unsigned char *type_stackp=type_stack;
 static unsigned char *mark_stack[STACK_SIZE/4];
diff --git a/src/lpc_types.h b/src/lpc_types.h
index 81011b6b8f..d3984bb4b4 100644
--- a/src/lpc_types.h
+++ b/src/lpc_types.h
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #ifndef LPC_TYPES_H
 #define LPC_TYPES_H
 
diff --git a/src/machine.h.in b/src/machine.h.in
index e1555fd7ff..e4d1c8c4c7 100644
--- a/src/machine.h.in
+++ b/src/machine.h.in
@@ -1,6 +1,9 @@
 #ifndef MACHINE_H
 #define MACHINE_H
 
+/* Define for solaris */
+#undef SOLARIS
+
 /* Define if using alloca.c.  */
 #undef C_ALLOCA
 
@@ -128,6 +131,9 @@
 /* Define if you have strtok */
 #undef HAVE_STRTOK
 
+/* Define if you have strcasecmp */
+#undef HAVE_STRCASECMP
+
 /* Define if you have strtod */
 #undef HAVE_STRTOD
 
@@ -218,26 +224,6 @@
 #define ATTRIBUTE(X)
 #endif
 
-/* Do we need to use '#pragma alloca' ? */
-#undef USE_PRAGMA_ALLOCA
-
-/* AIX requires this to be the first thing in the file.  */
-#ifdef __GNUC__
-# define alloca __builtin_alloca
-#else
-# if HAVE_ALLOCA_H
-#  include <alloca.h>
-# else
-#  ifdef _AIX
-#pragma alloca
-#  else
-#   ifndef alloca /* predefined by HP cc +Olibcalls */
-char *alloca ();
-#   endif
-#  endif
-# endif
-#endif
-
 /* How to extract a char and an unsigned char from a char * */
 #undef EXTRACT_CHAR_BY_CAST
 #undef EXTRACT_UCHAR_BY_CAST
diff --git a/src/macros.h b/src/macros.h
index 574b290b85..6308c68696 100644
--- a/src/macros.h
+++ b/src/macros.h
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #ifndef MACROS_H
 #define MACROS_H
 
diff --git a/src/main.c b/src/main.c
index 173ef6eec3..31cc1a7729 100644
--- a/src/main.c
+++ b/src/main.c
@@ -1,10 +1,17 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #include <stdio.h>
 #include <stdlib.h>
 #include "global.h"
 #include "types.h"
+
 #ifdef HAVE_SYS_TIME_H
 #include <sys/time.h>
 #endif
+
 #include "backend.h"
 #include "module.h"
 #include "object.h"
@@ -17,6 +24,7 @@
 #include "error.h"
 #include "macros.h"
 #include "callback.h"
+#include "lpc_signal.h"
 
 #ifdef HAVE_LOCALE_H
 #include <locale.h>
@@ -191,6 +199,7 @@ void init_main_efuns()
   init_lex();
   init_types();
   init_builtin_efuns();
+  init_signals();
 }
 
 void init_main_programs()
@@ -206,6 +215,7 @@ void exit_main()
   void cleanup_program();
 
   automatic_fatal="uLPC is exiting: ";
+  exit_signals();
   exit_lex();
   cleanup_objects();
   cleanup_interpret();
diff --git a/src/main.h b/src/main.h
index 045a33a828..8b4e74e149 100644
--- a/src/main.h
+++ b/src/main.h
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #ifndef MAIN_H
 #define MAIN_H
 
diff --git a/src/mapping.c b/src/mapping.c
index b31b396660..925d5ca1e2 100644
--- a/src/mapping.c
+++ b/src/mapping.c
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #include <stdlib.h>
 #include "global.h"
 #include "types.h"
diff --git a/src/mapping.h b/src/mapping.h
index aba9e983f0..9a9132cb14 100644
--- a/src/mapping.h
+++ b/src/mapping.h
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #ifndef MAPPING_H
 #define MAPPING_H
 
diff --git a/src/memory.c b/src/memory.c
index ab1fb8b106..8463fdeef7 100644
--- a/src/memory.c
+++ b/src/memory.c
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #include <stdlib.h>
 #include "global.h"
 #include "memory.h"
@@ -276,10 +281,15 @@ unsigned INT32 hashmem(const unsigned char *a,INT32 len,INT32 mlen)
   }
 
 #ifdef HANDLES_UNALIGNED_MEMORY_ACCESS
-  for(mlen>>=3;--mlen>=0;)
   {
-    ret^=(ret<<7)+*(((unsigned int *)a)++);
-    ret^=(ret>>6)+*(((unsigned int *)a)++);
+    unsigned int *b;
+    b=(unsigned int *)a;
+
+    for(mlen>>=3;--mlen>=0;)
+    {
+      ret^=(ret<<7)+*(b++);
+      ret^=(ret>>6)+*(b++);
+    }
   }
 #else
   for(mlen>>=3;--mlen>=0;)
diff --git a/src/memory.h b/src/memory.h
index 8bfd09a828..b93106c27f 100644
--- a/src/memory.h
+++ b/src/memory.h
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #ifndef MEMORY_H
 #define MEMORY_H
 
diff --git a/src/module.c b/src/module.c
index 33e136f310..b784acd9fc 100644
--- a/src/module.c
+++ b/src/module.c
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #include "module.h"
 #include "macros.h"
 #include "error.h"
diff --git a/src/module.h b/src/module.h
index d196728673..2ee8a0a690 100644
--- a/src/module.h
+++ b/src/module.h
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #ifndef MODULE_H
 #define MODULE_H
 
diff --git a/src/modules/files/Makefile.in b/src/modules/files/Makefile.in
index 6ce8a8296d..d0351e5c70 100644
--- a/src/modules/files/Makefile.in
+++ b/src/modules/files/Makefile.in
@@ -13,21 +13,66 @@ files.a: $(FILES)
 clean:
 	-rm -f *.o *.a
 
-datagram.o: ./datagram.c
-efuns.o: ./efuns.c ./../../global.h ./../../config.h ./../../machine.h \
- ./../../port.h ./../../interpret.h ./../../program.h ./../../svalue.h \
- ./../../stralloc.h ./../../array.h ./../../las.h \
- ./../../dynamic_buffer.h ./../../mapping.h ./../../macros.h \
- ./../../fd_control.h ./file_machine.h
-file.o: ./file.c ./../../global.h ./../../config.h ./../../machine.h \
- ./../../port.h ./../../interpret.h ./../../program.h ./../../svalue.h \
- ./../../stralloc.h ./../../array.h ./../../las.h \
- ./../../dynamic_buffer.h ./../../object.h ./../../macros.h \
- ./../../backend.h ./../../fd_control.h ./file_machine.h ./file.h \
- ./../../error.h /usr/include/netdb.h
-socket.o: ./socket.c ./../../global.h ./../../config.h \
- ./../../machine.h ./../../port.h ./../../interpret.h \
- ./../../program.h ./../../svalue.h ./../../stralloc.h ./../../array.h \
- ./../../las.h ./../../dynamic_buffer.h ./../../object.h \
- ./../../macros.h ./../../backend.h ./../../fd_control.h \
- ./file_machine.h ./file.h
+depend:
+	gcc -MM $(PREFLAGS) $(SRCDIR)/*.c | sed 's;$(SRCDIR)/;;g' | sed 's;\.\./;;g' | sed 's;\./;;g' >$(SRCDIR)/dependencies
+	cat $(SRCDIR)/Makefile.in.src $(SRCDIR)/dependencies > $(SRCDIR)/Makefile.in
+	config.status
+
+datagram.o: datagram.c
+efuns.o: efuns.c \
+ global.h \
+ machine.h \
+ config.h \
+ debug.h \
+ port.h \
+ interpret.h \
+ program.h \
+ svalue.h \
+ stralloc.h \
+ array.h \
+ las.h \
+ dynamic_buffer.h \
+ mapping.h \
+ macros.h \
+ fd_control.h \
+ file_machine.h
+file.o: file.c \
+ global.h \
+ machine.h \
+ config.h \
+ debug.h \
+ port.h \
+ interpret.h \
+ program.h \
+ svalue.h \
+ stralloc.h \
+ array.h \
+ las.h \
+ dynamic_buffer.h \
+ object.h \
+ macros.h \
+ backend.h \
+ fd_control.h \
+ file_machine.h \
+ file.h \
+ error.h \
+ lpc_signal.h
+socket.o: socket.c \
+ global.h \
+ machine.h \
+ config.h \
+ debug.h \
+ port.h \
+ interpret.h \
+ program.h \
+ svalue.h \
+ stralloc.h \
+ array.h \
+ las.h \
+ dynamic_buffer.h \
+ object.h \
+ macros.h \
+ backend.h \
+ fd_control.h \
+ file_machine.h \
+ file.h
diff --git a/src/modules/files/Makefile.in.src b/src/modules/files/Makefile.in.src
index 187530b2b7..b182cf7d54 100644
--- a/src/modules/files/Makefile.in.src
+++ b/src/modules/files/Makefile.in.src
@@ -13,3 +13,8 @@ files.a: $(FILES)
 clean:
 	-rm -f *.o *.a
 
+depend:
+	gcc -MM $(PREFLAGS) $(SRCDIR)/*.c | sed 's;$(SRCDIR)/;;g' | sed 's;\.\./;;g' | sed 's;\./;;g' >$(SRCDIR)/dependencies
+	cat $(SRCDIR)/Makefile.in.src $(SRCDIR)/dependencies > $(SRCDIR)/Makefile.in
+	config.status
+
diff --git a/src/modules/files/configure.in b/src/modules/files/configure.in
index 1390035135..e7464f5ad2 100644
--- a/src/modules/files/configure.in
+++ b/src/modules/files/configure.in
@@ -5,11 +5,12 @@ AC_PROG_CC
 AC_PROG_RANLIB
 AC_SUBST(RANLIB)
 
-AC_HAVE_HEADERS(arpa/inet.h sys/socketvar.h netinet/in.h sys/stream.h sys/protosw.h)
+AC_HAVE_HEADERS(arpa/inet.h sys/socketvar.h netinet/in.h \
+ sys/stream.h sys/protosw.h)
 AC_HEADER_DIRENT
 AC_CHECK_LIB(socket, socket)
 
-AC_HAVE_FUNCS(socketpair)
+AC_HAVE_FUNCS(socketpair waitpid wait4)
 
 AC_MSG_CHECKING(size of socket buffers)
 AC_CACHE_VAL(lpc_cv_socket_buffer_max,
diff --git a/src/modules/files/datagram.c b/src/modules/files/datagram.c
index bd16f9285d..fbbc9e6669 100644
--- a/src/modules/files/datagram.c
+++ b/src/modules/files/datagram.c
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 struct datagram
 {
   int fd;
diff --git a/src/modules/files/efuns.c b/src/modules/files/efuns.c
index 0072aacb82..3282c8203b 100644
--- a/src/modules/files/efuns.c
+++ b/src/modules/files/efuns.c
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #include "global.h"
 #include "types.h"
 #include "interpret.h"
@@ -196,7 +201,7 @@ void f_getcwd(INT32 args)
 
 #ifdef HAVE_GETWD
 #ifndef MAXPATHLEN
-#define MAXPATHLEN (1024*20)
+#define MAXPATHLEN (32768)
 #endif
   e=(char *)getwd((char *)malloc(MAXPATHLEN+1));
   if(!e)
@@ -243,6 +248,7 @@ void f_exece(INT32 args)
     error("Too few arguments to exece().\n");
 
   e=0;
+  en=0;
   switch(args)
   {
   default:
@@ -282,7 +288,7 @@ void f_exece(INT32 args)
   }
   argv[e+1]=0;
 
-  if(args>2)
+  if(en)
   {
     env=(char **)xalloc((1+en->ind->size) * sizeof(char *));
 
diff --git a/src/modules/files/file.c b/src/modules/files/file.c
index 91237c4170..8f840142c7 100644
--- a/src/modules/files/file.c
+++ b/src/modules/files/file.c
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #define READ_BUFFER 10000
 
 /*
@@ -24,6 +29,7 @@
 #include "file_machine.h"
 #include "file.h"
 #include "error.h"
+#include "lpc_signal.h"
 
 #include <sys/types.h>
 #include <sys/stat.h>
@@ -47,7 +53,7 @@
 #endif
 
 #ifdef HAVE_NETDB_H
-#include "netdb.h"
+#include <netdb.h>
 #endif
 
 #define THIS ((struct file *)(fp->current_storage))
@@ -132,9 +138,13 @@ static int map(int flags)
   return ret;
 }
 
+static void call_free(char *s) { free(s); }
+static void free_dynamic_buffer(dynamic_buffer *b) { free(b->s.str); }
+
 static void file_read(INT32 args)
 {
   INT32 i, r, bytes_read;
+  ONERROR ebuf;
 
   if(THIS->fd < 0)
     error("File not open.\n");
@@ -154,9 +164,13 @@ static void file_read(INT32 args)
 
     str=begin_shared_string(r);
 
+    SET_ONERROR(ebuf, call_free, str);
+
     do{
       i=read(THIS->fd, str->str+bytes_read, r);
 
+      check_signals();
+
       if(i>0)
       {
 	r-=i;
@@ -179,6 +193,8 @@ static void file_read(INT32 args)
       }
     }while(r);
 
+    UNSET_ONERROR(ebuf);
+    
     if(bytes_read == str->len)
     {
       push_string(end_shared_string(str));
@@ -190,13 +206,18 @@ static void file_read(INT32 args)
   }else{
 #define CHUNK 16384
     INT32 try_read;
+    dynamic_buffer b;
 
-    init_buf();
+    b.s.str=0;
+    low_init_buf(&b);
+    SET_ONERROR(ebuf, free_dynamic_buffer, &b);
     do{
       try_read=MINIMUM(CHUNK,r);
+      
+      i=read(THIS->fd, low_make_buf_space(try_read, &b), try_read);
 
-      i=read(THIS->fd, make_buf_space(try_read), try_read);
-
+      check_signals();
+      
       if(i==try_read)
       {
 	r-=i;
@@ -206,22 +227,22 @@ static void file_read(INT32 args)
       {
 	bytes_read+=i;
 	r-=i;
-	make_buf_space(i - try_read);
+	low_make_buf_space(i - try_read, &b);
       }
       else if(i==0)
       {
-	make_buf_space(-try_read);
+	low_make_buf_space(-try_read, &b);
 	break;
       }
       else
       {
-	make_buf_space(-try_read);
+	low_make_buf_space(-try_read, &b);
 	if(errno != EINTR)
 	{
 	  THIS->errno=errno;
 	  if(!bytes_read)
 	  {
-	    free(simple_free_buf());
+	    free(b.s.str);
 	    push_int(0);
 	    return;
 	  }
@@ -229,7 +250,8 @@ static void file_read(INT32 args)
 	}
       }
     }while(r);
-    push_string(free_buf());
+    UNSET_ONERROR(ebuf);
+    push_string(low_free_buf(&b));
   }
 }
 
@@ -663,6 +685,92 @@ static void file_set_buffer(INT32 args)
 #endif
 }
 
+
+#ifndef HAVE_SOCKETPAIR
+
+/* No socketpair() ?
+ * No AF_UNIX sockets ?
+ * No hope ?
+ *
+ * Don't dispair, socketpair_ultra is here!
+ * Tests done in an independant institute in europe shows
+ * socketpair_ultra is 50% more portable than other leading
+ * brands of socketpair.
+ *                                                   /Hubbe
+ */
+
+/* redefine socketpair to something that hopefully won't
+ * collide with any libs or headers. Also useful when testing
+ * this code on a system that _has_ socketpair...
+ */
+#define socketpair socketpair_ultra
+
+extern int errno;
+int socketpair(int family, int type, int protocol, int sv[2])
+{
+  struct sockaddr_in addr,addr2;
+  int len, fd;
+
+  MEMSET((char *)&addr,0,sizeof(struct sockaddr_in));
+
+  /* We lie, we actually create an AF_INET socket... */
+  if(family != AF_UNIX || type != SOCK_STREAM)
+  {
+    errno=EINVAL;
+    return -1; 
+  }
+  
+  if((fd=socket(AF_INET, SOCK_STREAM, 0)) < 0) return -1;
+  if((sv[1]=socket(AF_INET, SOCK_STREAM, 0)) <0) return -1;
+
+
+  /* I wonder what is most common a loopback on ip# 127.0.0.1 or
+   * a loopback with the name "localhost"?
+   * Let's hope those few people who doesn't have socketpair has
+   * a loopback on 127.0.0.1
+   */
+  addr.sin_addr.s_addr=inet_addr("127.0.0.1");
+  addr.sin_port=htons(0);
+  addr2.sin_addr.s_addr=inet_addr("127.0.0.1");
+  addr2.sin_port=htons(0);
+
+  /* Bind our sockets on any port */
+  if(bind(fd, (struct sockaddr *)&addr, sizeof(addr)) < 0) return -1;
+  if(bind(sv[1], (struct sockaddr *)&addr2, sizeof(addr2)) < 0) return -1;
+
+  /* Check what ports we got.. */
+  if(getsockname(fd,(struct sockaddr *)&addr,&len) < 0) return -1;
+  if(getsockname(sv[1],(struct sockaddr *)&addr2,&len) < 0) return -1;
+
+  /* Listen to connections on our new socket */
+  if(listen(fd, 3) < 0 ) return -1;
+  
+  /* Connect */
+  if(connect(sv[1], (struct sockaddr *)&addr, sizeof(addr)) < 0) return -1;
+
+  /* Accept connection
+   * Make sure this connection was our OWN connection,
+   * otherwise some wizeguy could interfere with our
+   * pipe by guessing our socket and connecting at
+   * just the right time... uLPC is supposed to be
+   * pretty safe...
+   */
+  do
+  {
+    len=sizeof(addr2);
+    sv[0]=accept(fd,(struct sockaddr_in *)&addr2,&len);
+    if(sv[0] < 0) return -1;
+  }while(len < sizeof(addr2) ||
+       addr2.sin_addr.s_addr != addr.sin_addr.s_addr ||
+       addr2.sin_port != addr.sin_port)
+
+  if(close(fd) <0) return -1;
+
+  return 0;
+}
+
+#endif
+
 static void file_pipe(INT32 args)
 {
   int inout[2],i;
@@ -1015,8 +1123,19 @@ void exit_files()
 
 static RETSIGTYPE sig_child(int arg)
 {
+#ifdef HAVE_WAITPID
   waitpid(-1,0,WNOHANG);
   signal(SIGCHLD,sig_child);
+#else
+#ifdef HAVE_WAIT3
+  wait3(-1,0,WNOHANG);
+  signal(SIGCHLD,sig_child);
+#else
+
+  /* Leave'em hanging */
+
+#endif /* HAVE_WAIT3 */
+#endif /* HAVE_WAITPID */
 }
 
 void init_files_programs()
diff --git a/src/modules/files/file.h b/src/modules/files/file.h
index 2fda74eb79..0223cf102a 100644
--- a/src/modules/files/file.h
+++ b/src/modules/files/file.h
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #ifndef FILE_H
 #define FILE_H
 
@@ -9,6 +14,12 @@
 #ifndef ARPA_INET_H
 #include <arpa/inet.h>
 #define ARPA_INET_H
+
+/* Stupid patch to avoid trouble with Linux includes... */
+#ifdef LITTLE_ENDIAN
+#undef LITTLE_ENDIAN
+#endif
+
 #endif
 #endif
 
diff --git a/src/modules/files/file_machine.h.in b/src/modules/files/file_machine.h.in
index 2d06ac90c4..fe7b9653ee 100644
--- a/src/modules/files/file_machine.h.in
+++ b/src/modules/files/file_machine.h.in
@@ -1,10 +1,6 @@
 #ifndef FILE_MACHINE_H
 #define FILE_MACHINE_H
 
-
-#undef HAVE_SYS_PROTOSW_H
-#undef HAVE_SYS_STREAM_H
-
 /* Define if you have arpa/inhet.h */
 #undef HAVE_ARPA_INET_H
 
@@ -14,6 +10,12 @@
 /* Define if you have the <netinet/in.h> header file.  */
 #undef HAVE_NETINET_IN_H
 
+/* Define if you have the <sys/straem.h> header file.  */
+#undef HAVE_SYS_STREAM_H
+
+/* Define if you have the <sys/protosw.h> header file.  */
+#undef HAVE_SYS_PROTOSW_H
+
 /* Define if you have dirent.h.  */
 #undef HAVE_DIRENT_H
 
@@ -32,5 +34,11 @@
 /* Do we have socketpair() ? */
 #undef HAVE_SOCKETPAIR
 
+/* Define if you have waitpid */
+#undef HAVE_WAITPID
+
+/* Define if you have wait4 */
+#undef HAVE_WAIT4
+
 #endif
 
diff --git a/src/modules/files/socket.c b/src/modules/files/socket.c
index 5a09b71df6..a71c86886b 100644
--- a/src/modules/files/socket.c
+++ b/src/modules/files/socket.c
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #include "global.h"
 #include "types.h"
 #include "interpret.h"
@@ -20,7 +25,6 @@
 #include <sys/wait.h>
 #include <sys/socket.h>
 
-
 #ifdef HAVE_SYS_STREAM_H
 #include <sys/stream.h>
 #endif
@@ -33,6 +37,13 @@
 #include <sys/socketvar.h>
 #endif
 
+#ifdef SOLARIS
+#include <synch.h>
+#include <sys/mman.h>
+
+mutex_t *locks;
+#endif
+
 struct port
 {
   int fd;
@@ -172,8 +183,10 @@ static void port_bind(INT32 args)
     push_int(0);
     return;
   }
+
   set_close_on_exec(fd,1);
-  
+
+
   if(args > 2 && sp[2-args].type==T_STRING)
   {
     get_inet_addr(&addr, sp[2-args].u.string->str);
@@ -252,7 +265,14 @@ static void port_accept(INT32 args)
   if(THIS->fd < 0)
     error("port->accept(): Port not open.\n");
 
+#ifdef SOLARIS
+  mutex_lock(locks+THIS->fd);
   fd=accept(THIS->fd, 0, &len);
+  mutex_unlock(locks+THIS->fd);
+#else
+  fd=accept(THIS->fd, 0, &len);
+#endif
+
   if(fd < 0)
   {
     THIS->errno=errno;
@@ -307,6 +327,41 @@ static void exit_port_struct(char *foo, struct object *o)
 
 void port_setup_program()
 {
+#ifdef SOLARIS
+  /* Note:
+   * This hack is because solaris accept() isn't atomic and problems arise
+   * when several processes do accept() on the same fd IF that fd is
+   * nonblocking. This patch puts an atomic mutex lock around accept().
+   * We allocate one lock / filedescriptor with mmap, and use MAP_SHARED
+   * so they are shared across fork()... For people who doesn't use fork()
+   * or nonblocking sockets this patch won't do anything.
+   *
+   * This is an ugly workaround (tm)  /Fredrik Hubinette
+   */
+  int i;
+  i=open("/dev/zero",O_RDWR);
+  if(i<0)
+  {
+    perror("Failed to open /dev/zero");
+    exit(5);
+  }
+  locks=(mutex_t *)mmap(0, sizeof(mutex_t)*MAX_OPEN_FILEDESCRIPTORS,
+			PROT_READ | PROT_WRITE, MAP_SHARED, i, 0);
+  if(!locks)
+  {
+    perror("Failed to mmap /dev/zero");
+    exit(5);
+  }
+  close(i);
+  for(i=0;i<MAX_OPEN_FILEDESCRIPTORS;i++)
+  {
+    if(mutex_init(locks+i,USYNC_PROCESS,0))
+    {
+      perror("Mutex init failed");
+      exit(5);
+    }
+  }
+#endif
   start_new_program();
   add_storage(sizeof(struct port));
   add_function("bind",port_bind,"function(int,void|mixed:int)",0);
diff --git a/src/modules/math/Makefile.in b/src/modules/math/Makefile.in
index 5ab2b7cdbc..46771bab11 100644
--- a/src/modules/math/Makefile.in
+++ b/src/modules/math/Makefile.in
@@ -14,10 +14,18 @@ clean:
 	-rm -f *.o *.a
 
 depend:
-	gcc -MM $(PREFLAGS) $(SRCDIR)/*.c  >$(SRCDIR)/dependencies
+	gcc -MM $(PREFLAGS) $(SRCDIR)/*.c | sed 's;$(SRCDIR)/;;g' | sed 's;\.\./;;g' | sed 's;\./;;g' >$(SRCDIR)/dependencies
 	cat $(SRCDIR)/Makefile.in.src $(SRCDIR)/dependencies > $(SRCDIR)/Makefile.in
 	config.status
 
-math.o: ./math.c ./../../interpret.h ./../../program.h \
- ./../../config.h ./../../machine.h ./../../types.h ./../../add_efun.h \
- ./../../svalue.h ./../../hashtable.h
+math.o: math.c \
+ interpret.h \
+ program.h \
+ config.h \
+ machine.h \
+ types.h \
+ add_efun.h \
+ svalue.h \
+ hashtable.h \
+ las.h \
+ dynamic_buffer.h
diff --git a/src/modules/math/Makefile.in.src b/src/modules/math/Makefile.in.src
index b37199672f..307a88b731 100644
--- a/src/modules/math/Makefile.in.src
+++ b/src/modules/math/Makefile.in.src
@@ -14,7 +14,7 @@ clean:
 	-rm -f *.o *.a
 
 depend:
-	gcc -MM $(PREFLAGS) $(SRCDIR)/*.c  >$(SRCDIR)/dependencies
+	gcc -MM $(PREFLAGS) $(SRCDIR)/*.c | sed 's;$(SRCDIR)/;;g' | sed 's;\.\./;;g' | sed 's;\./;;g' >$(SRCDIR)/dependencies
 	cat $(SRCDIR)/Makefile.in.src $(SRCDIR)/dependencies > $(SRCDIR)/Makefile.in
 	config.status
 
diff --git a/src/modules/math/math.c b/src/modules/math/math.c
index c0917e61cb..1b1cb183fa 100644
--- a/src/modules/math/math.c
+++ b/src/modules/math/math.c
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #include <math.h>
 #include "interpret.h"
 #include "add_efun.h"
diff --git a/src/modules/regexp/Makefile.in b/src/modules/regexp/Makefile.in
index 2b584a9d1e..5161a7ec6d 100644
--- a/src/modules/regexp/Makefile.in
+++ b/src/modules/regexp/Makefile.in
@@ -14,14 +14,31 @@ clean:
 	-rm -f *.o *.a
 
 depend:
-	gcc -MM $(PREFLAGS) $(SRCDIR)/*.c  >$(SRCDIR)/dependencies
+	gcc -MM $(PREFLAGS) $(SRCDIR)/*.c | sed 's;$(SRCDIR)/;;g' | sed 's;\.\./;;g' | sed 's;\./;;g' >$(SRCDIR)/dependencies
 	cat $(SRCDIR)/Makefile.in.src $(SRCDIR)/dependencies > $(SRCDIR)/Makefile.in
 	config.status
 
-glue.o: ./glue.c ./../../global.h ./../../config.h ./../../machine.h \
- ./../../port.h ./../../interpret.h ./../../program.h ./../../svalue.h \
- ./../../stralloc.h ./../../array.h ./../../las.h \
- ./../../dynamic_buffer.h ./../../object.h ./../../macros.h
-regexp.o: ./regexp.c ./../../global.h ./../../config.h \
- ./../../machine.h ./../../port.h ./regexp.h ./../../error.h \
- ./../../svalue.h
+glue.o: glue.c \
+ global.h \
+ machine.h \
+ config.h \
+ debug.h \
+ port.h \
+ interpret.h \
+ program.h \
+ svalue.h \
+ stralloc.h \
+ array.h \
+ las.h \
+ dynamic_buffer.h \
+ object.h \
+ macros.h
+regexp.o: regexp.c \
+ global.h \
+ machine.h \
+ config.h \
+ debug.h \
+ port.h \
+ regexp.h \
+ error.h \
+ svalue.h
diff --git a/src/modules/regexp/Makefile.in.src b/src/modules/regexp/Makefile.in.src
index 614165b138..e8884d0af1 100644
--- a/src/modules/regexp/Makefile.in.src
+++ b/src/modules/regexp/Makefile.in.src
@@ -14,7 +14,7 @@ clean:
 	-rm -f *.o *.a
 
 depend:
-	gcc -MM $(PREFLAGS) $(SRCDIR)/*.c  >$(SRCDIR)/dependencies
+	gcc -MM $(PREFLAGS) $(SRCDIR)/*.c | sed 's;$(SRCDIR)/;;g' | sed 's;\.\./;;g' | sed 's;\./;;g' >$(SRCDIR)/dependencies
 	cat $(SRCDIR)/Makefile.in.src $(SRCDIR)/dependencies > $(SRCDIR)/Makefile.in
 	config.status
 
diff --git a/src/modules/regexp/glue.c b/src/modules/regexp/glue.c
index fb412e533a..f378f797ba 100644
--- a/src/modules/regexp/glue.c
+++ b/src/modules/regexp/glue.c
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #include "global.h"
 #include "types.h"
 #include "interpret.h"
@@ -64,17 +69,21 @@ static void regexp_split(INT32 args)
   s=sp[-args].u.string;
   if(regexec(r=THIS->regexp, s->str))
   {
-    int i, j;
+    int i,j;
     s->refs++;
     pop_n_elems(args);
-    j=0;
-    for(i=1;i<NSUBEXP;i++)
+    for(j=i=1;i<NSUBEXP;i++)
     {
-      if(!r->startp[i] || !r->endp[i]) break;
-      push_string(make_shared_binary_string(r->startp[i],
-					    r->endp[i]-r->startp[i]));
-      j++;
+      if(!r->startp[i] || !r->endp[i])
+      {
+	push_int(0);
+      }else{
+	push_string(make_shared_binary_string(r->startp[i],
+					      r->endp[i]-r->startp[i]));
+	j=i;
+      }
     }
+    if(j<i-1) pop_n_elems(i-j-1);
     push_array(aggregate_array(j,T_STRING));
     free_string(s);
   }else{
diff --git a/src/modules/regexp/regexp.h b/src/modules/regexp/regexp.h
index 51d528d19e..0e5ae64223 100644
--- a/src/modules/regexp/regexp.h
+++ b/src/modules/regexp/regexp.h
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #ifndef REGEXP_H
 #define REGEXP_H
 /*
@@ -7,7 +12,7 @@
  * not the System V one.
  */
 
-#define NSUBEXP  20
+#define NSUBEXP  40
 typedef struct regexp
 {
   char *startp[NSUBEXP];
diff --git a/src/modules/sprintf/Makefile.in b/src/modules/sprintf/Makefile.in
index 62a4e79499..dcb4002dd9 100644
--- a/src/modules/sprintf/Makefile.in
+++ b/src/modules/sprintf/Makefile.in
@@ -14,13 +14,25 @@ clean:
 	-rm -f *.o *.a
 
 depend:
-	gcc -MM $(PREFLAGS) $(SRCDIR)/*.c  >$(SRCDIR)/dependencies
+	gcc -MM $(PREFLAGS) $(SRCDIR)/*.c | sed 's;$(SRCDIR)/;;g' | sed 's;\.\./;;g' | sed 's;\./;;g' >$(SRCDIR)/dependencies
 	cat $(SRCDIR)/Makefile.in.src $(SRCDIR)/dependencies > $(SRCDIR)/Makefile.in
 	config.status
 
 
-sprintf.o: ./sprintf.c ./../../global.h ./../../config.h \
- ./../../machine.h ./../../port.h ./../../error.h ./../../svalue.h \
- ./../../array.h ./../../las.h ./../../dynamic_buffer.h \
- ./../../program.h ./../../stralloc.h ./../../lpc_types.h \
- ./../../add_efun.h ./../../hashtable.h ./../../interpret.h
+sprintf.o: sprintf.c \
+ global.h \
+ machine.h \
+ config.h \
+ debug.h \
+ port.h \
+ error.h \
+ svalue.h \
+ array.h \
+ las.h \
+ dynamic_buffer.h \
+ program.h \
+ stralloc.h \
+ lpc_types.h \
+ add_efun.h \
+ hashtable.h \
+ interpret.h
diff --git a/src/modules/sprintf/Makefile.in.src b/src/modules/sprintf/Makefile.in.src
index 2b683bff05..fe1827d5b5 100644
--- a/src/modules/sprintf/Makefile.in.src
+++ b/src/modules/sprintf/Makefile.in.src
@@ -14,7 +14,7 @@ clean:
 	-rm -f *.o *.a
 
 depend:
-	gcc -MM $(PREFLAGS) $(SRCDIR)/*.c  >$(SRCDIR)/dependencies
+	gcc -MM $(PREFLAGS) $(SRCDIR)/*.c | sed 's;$(SRCDIR)/;;g' | sed 's;\.\./;;g' | sed 's;\./;;g' >$(SRCDIR)/dependencies
 	cat $(SRCDIR)/Makefile.in.src $(SRCDIR)/dependencies > $(SRCDIR)/Makefile.in
 	config.status
 
diff --git a/src/modules/sprintf/sprintf.c b/src/modules/sprintf/sprintf.c
index c2a61282b0..e3459803a7 100644
--- a/src/modules/sprintf/sprintf.c
+++ b/src/modules/sprintf/sprintf.c
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 /*
   LPC Sprintf v2.0 By Fredrik Hubinette (Profezzorn@nannymud)
   Should be reasonably compatible and somewhat faster than v1.05+ of Lynscar's
diff --git a/src/object.c b/src/object.c
index 8283f7db77..6391e297f2 100644
--- a/src/object.c
+++ b/src/object.c
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #include <stdlib.h>
 #include "global.h"
 #include "object.h"
@@ -30,9 +35,6 @@ struct object *clone(struct program *p, int args)
   struct frame frame;
 
   o=(struct object *)xalloc(sizeof(struct object)-1+p->storage_needed);
-#ifdef DEBUG
-  if(d_flag > 14) check_signals();
-#endif
 
   o->prog=p;
   p->refs++;
@@ -97,19 +99,11 @@ struct object *clone(struct program *p, int args)
     o->refs++;
   }
 
-#ifdef DEBUG
-    if(d_flag > 14) check_signals();
-#endif
-
   apply(o,"__INIT",0);
   pop_stack();
   apply(o,"create",args);
   pop_stack();
 
-#ifdef DEBUG
-    if(d_flag > 14) check_signals();
-#endif
-
   return o;
 }
 
diff --git a/src/object.h b/src/object.h
index 58a34182d6..e0336b2c3b 100644
--- a/src/object.h
+++ b/src/object.h
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #ifndef OBJECT_H
 #define OBJECT_H
 
diff --git a/src/opcodes.c b/src/opcodes.c
index df459febd3..7bb18b7aeb 100644
--- a/src/opcodes.c
+++ b/src/opcodes.c
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #include <math.h>
 #include <ctype.h>
 #include "global.h"
diff --git a/src/opcodes.h b/src/opcodes.h
index 5ba3e74227..f577aba47d 100644
--- a/src/opcodes.h
+++ b/src/opcodes.h
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #ifndef OPCODES_H
 #define OPCODES_H
 
diff --git a/src/operators.c b/src/operators.c
index 14435aba9b..9b18904820 100644
--- a/src/operators.c
+++ b/src/operators.c
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #include <math.h>
 #include "global.h"
 #include "interpret.h"
diff --git a/src/operators.h b/src/operators.h
index 7f4a966dc7..a93a17f2b0 100644
--- a/src/operators.h
+++ b/src/operators.h
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #ifndef OPERATORS_H
 #define OPERATORS_H
 
diff --git a/src/otable.h b/src/otable.h
index 525d7adefe..d025ef120b 100644
--- a/src/otable.h
+++ b/src/otable.h
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 void enter_program_hash PROT((struct program *));
 void remove_program_hash PROT((struct program *));
 struct program *lookup_program_hash PROT((char *));
diff --git a/src/port.c b/src/port.c
index 5d4ae22ddc..325dc69657 100644
--- a/src/port.c
+++ b/src/port.c
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #include "global.h"
 #include "macros.h"
 #include <ctype.h>
@@ -39,7 +44,6 @@ void my_srand(int seed)
 long get_current_time(void) { return (long)time(0L); }
 
 
-
 #ifndef HAVE_STRTOL
 #define DIGIT(x)	(isdigit(x) ? (x) - '0' : \
 			islower(x) ? (x) + 10 - 'a' : (x) + 10 - 'A')
@@ -90,6 +94,24 @@ long STRTOL(char *str,char **ptr,int base)
 }
 #endif
 
+#ifndef HAVE_STRCASECMP
+int STRCASECMP(const char *a,const char *b)
+{
+  int ac, bc;
+
+  while(1)
+  {
+    ac=*(a++);
+    bc=*(b++);
+
+    if(ac && isupper(ac)) ac=tolower(ac);
+    if(bc && isupper(bc)) bc=tolower(bc);
+    if(ac != bc) return 1;
+    if(!ac) return 0;
+  }
+}
+#endif
+
 #ifndef HAVE_MEMSET
 char *MEMSET(char *s,int c,int n)
 {
diff --git a/src/port.h b/src/port.h
index 0c8afe2980..a8a5155e83 100644
--- a/src/port.h
+++ b/src/port.h
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #ifndef PORT_H
 #define PORT_H
 
@@ -21,6 +26,12 @@ int STRCSPN(const char *s,const char * set);
 #  define STRCSPN strcspn
 #endif
 
+#ifndef HAVE_STRCASECMP
+int STRCASECMP(const char *a,const char *b);
+#else
+#  define STRCSPN strcspn
+#endif
+
 #ifndef HAVE_MEMSET
 char *MEMSET (char *s,int c,int n);
 #else
@@ -42,7 +53,7 @@ char *MEMCPY(char *b,const char *a,int s);
 #ifndef HAVE_MEMMOVE
 char *MEMMOVE(char *b,const char *a,int s);
 #else
-#  define MEMCPY memmove
+#  define MEMMOVE memmove
 #endif
 
 #ifndef HAVE_MEMCMP
diff --git a/src/program.h b/src/program.h
index a421448d76..e32e96c476 100644
--- a/src/program.h
+++ b/src/program.h
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #ifndef EXEC_H
 #define EXEC_H
 
@@ -72,8 +77,8 @@ struct identifier
 
 struct reference
 {
-  INT16 inherit_offset;
-  INT16 identifier_offset;
+  unsigned INT16 inherit_offset;
+  unsigned INT16 identifier_offset;
   INT16 flags; /* static, private etc.. */
 };
 
diff --git a/src/rusage.c b/src/rusage.c
index dd6dfb29ec..78133d3028 100644
--- a/src/rusage.c
+++ b/src/rusage.c
@@ -1,6 +1,11 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #include <sys/types.h>
-#include <sys/time.h>
 #include <sys/stat.h>
+#include <sys/time.h>
 #include <fcntl.h>
 #include <time.h>
 #include <errno.h>
@@ -115,7 +120,7 @@ INT32 *low_rusage()
   rusage_values[0] = utime;
   rusage_values[1] = stime;
   rusage_values[2] = maxrss;
-#ifdef GETRUSAGE_RESTRICTED
+#ifndef GETRUSAGE_RESTRICTED
   rusage_values[3] = rus.ru_ixrss;
   rusage_values[4] = rus.ru_idrss;
   rusage_values[5] = rus.ru_isrss;
diff --git a/src/rusage.h b/src/rusage.h
index 6194eafd72..7f33ba2f7a 100644
--- a/src/rusage.h
+++ b/src/rusage.h
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #ifndef RUSAGE_H
 #define RUSAGE_H
 
diff --git a/src/stralloc.c b/src/stralloc.c
index e861b4088a..a6e1ccd6c3 100644
--- a/src/stralloc.c
+++ b/src/stralloc.c
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #include "global.h"
 #include "stralloc.h"
 #include "macros.h"
diff --git a/src/stralloc.h b/src/stralloc.h
index 33135cdf9c..a2b6261935 100644
--- a/src/stralloc.h
+++ b/src/stralloc.h
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #ifndef STRALLOC_H
 #define STRALLOC_H
 #include "types.h"
diff --git a/src/stuff.c b/src/stuff.c
index 606a56ada1..699f5cc2e1 100644
--- a/src/stuff.c
+++ b/src/stuff.c
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #include "stuff.h"
 
 /* same thing as (int)floor(log((double)x) / log(2.0)) */
diff --git a/src/stuff.h b/src/stuff.h
index be3365fdaa..7ca419d861 100644
--- a/src/stuff.h
+++ b/src/stuff.h
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #ifndef STUFF_H
 #define STUFF_H
 
diff --git a/src/svalue.c b/src/svalue.c
index 04911e133c..4003586b41 100644
--- a/src/svalue.c
+++ b/src/svalue.c
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #include "global.h"
 #include "svalue.h"
 #include "stralloc.h"
@@ -238,8 +243,8 @@ void assign_to_short_svalue(union anything *u,
 }
 
 void assign_to_short_svalue_no_free(union anything *u,
-					   TYPE_T type,
-					   struct svalue *s)
+				    TYPE_T type,
+				    struct svalue *s)
 {
   union anything tmp;
   check_type(s->type);
diff --git a/src/svalue.h b/src/svalue.h
index bc1a868bb5..1accfb2a80 100644
--- a/src/svalue.h
+++ b/src/svalue.h
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #ifndef SVALUE_H
 #define SVALUE_H
 
diff --git a/src/todo b/src/todo
index 6076bde5b3..1cff7fa8fb 100644
--- a/src/todo
+++ b/src/todo
@@ -116,6 +116,7 @@ a+=b -> a=a+b {r ju inte helt r{tt alltid...
    OM det fanns pekare....
 	done (utan pekare)
 
+
 reverse() ... done
 next_object() ... done
 indices() ... done
@@ -127,13 +128,20 @@ call_out() ... done
 find_call_out() ... done
 call_out_info() ... done
 remove_call_out() ... done
+file->rename() done (mv)
+mkmapping()	done
+mklist()	done
 
 file->write ska st{nga filen om saker g}r snett... (tror jag)
 	nej, det {r upp till anv{ndaren
 
+signals
+	done
+
 patch byacc
+	done (maybe needs more fixing)
 
-dokumentera
+dokumentera mera!
 
 ta bort MAX_LOCAL (& MAX_GLOBAL)
 
@@ -141,8 +149,6 @@ ta bort EXPANDMAX
 
 kommentera mera
 
-"make: Fatal error: Don't know how to make target `builtin_efuns.o'" (p} metoo)
-
 typkollen m}ste generera b{ttre felmeddelanden..
 
 putenv? setugid? 
@@ -152,14 +158,10 @@ inherit_list()
 function_args()
 get_function_list()
 fuzzymatch()
-file->rename()
 sort()
-mkmapping()
-mklist()
 this_function()
 kolla upp |vriga efunnar som skall portas 
 
-signals
 
 ++++ -> sum()
 
diff --git a/src/types.h b/src/types.h
index f3627f3509..4f2d994841 100644
--- a/src/types.h
+++ b/src/types.h
@@ -1,7 +1,12 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 #ifndef TYPES_H
 #define TYPES_H
-#include "machine.h"
 
+#include "machine.h"
 /* we here define a few types with more defined values */
 
 #define INT64 long long
diff --git a/src/ualarm.c b/src/ualarm.c
index cfa95fcfdc..805f65e22a 100644
--- a/src/ualarm.c
+++ b/src/ualarm.c
@@ -1,3 +1,8 @@
+/*\
+||| This file a part of uLPC, and is copyright by Fredrik Hubinette
+||| uLPC is distributed as GPL (General Public License)
+||| See the files COPYING and DISCLAIMER for more information.
+\*/
 /*
  * Copyright (c) 1985 Regents of the University of California.
  * All rights reserved.
-- 
GitLab