From 2359a05731e9a26d0b6d01cb34167506952611b5 Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Tue, 18 Jul 2017 17:07:55 -0400
Subject: [PATCH 01/98] fix "libdir" method for pdinfo

---
 pd/doc/5.reference/pdinfo-help.pd | 34 ++++++++++++++++---------------
 pd/src/x_interface.c              | 13 ++++--------
 2 files changed, 22 insertions(+), 25 deletions(-)

diff --git a/pd/doc/5.reference/pdinfo-help.pd b/pd/doc/5.reference/pdinfo-help.pd
index dcb3cc7de..3cc5c2d3f 100644
--- a/pd/doc/5.reference/pdinfo-help.pd
+++ b/pd/doc/5.reference/pdinfo-help.pd
@@ -1,4 +1,4 @@
-#N canvas 0 19 555 619 10;
+#N canvas 248 25 555 619 10;
 #X obj 0 595 cnv 15 552 21 empty \$0-pddp.cnv.footer empty 20 12 0
 14 -228856 -66577 0;
 #X obj 0 0 cnv 15 552 40 empty \$0-pddp.cnv.header pdinfo 3 12 0 18
@@ -46,13 +46,13 @@ version;
 #X obj 4 597 pddp/pddplink all_about_help_patches.pd -text Usage Guide
 ;
 #X obj 503 7 pdinfo;
-#X obj 39 284 pdinfo;
+#X obj 39 299 pdinfo;
 #X msg 39 60 print;
-#X msg 89 201 version;
-#X obj 39 315 print pd-version;
-#X text 143 200 version of Pd that's running (MAJOR MINOR TEST);
-#X msg 83 178 samplerate;
-#X text 157 177 global samplerate;
+#X msg 89 216 version;
+#X obj 39 330 print pd-version;
+#X text 143 215 version of Pd that's running (MAJOR MINOR TEST);
+#X msg 83 193 samplerate;
+#X text 157 192 global samplerate;
 #X msg 70 116 dir;
 #X text 99 115 directory of the Pd executable;
 #X msg 64 86 blocksize;
@@ -103,7 +103,7 @@ version;
 #X connect 23 0 21 0;
 #X connect 24 0 2 0;
 #X connect 28 0 2 0;
-#X restore 156 340 pd audio-attributes;
+#X restore 156 341 pd audio-attributes;
 #N canvas 125 83 428 395 midi-attributes 0;
 #X obj 1 1 cnv 15 425 20 empty \$0-pddp.cnv.subheading empty 3 12 0
 14 -204280 -1 0;
@@ -135,7 +135,7 @@ version;
 #X connect 15 0 2 0;
 #X connect 16 0 2 0;
 #X connect 17 0 2 0;
-#X restore 296 340 pd midi-attributes;
+#X restore 296 341 pd midi-attributes;
 #X text 98 370 print;
 #X text 168 370 - print out each available message (other than "print")
 followed by a semicolon and the output for that method.;
@@ -145,21 +145,22 @@ followed by a semicolon and the output for that method.;
 audio-device and midi-device message in subpatches.;
 #X text 169 459 - output varies depending on the message sent to [pdinfo]
 ;
-#X msg 101 253 classlist;
-#X text 155 305 Audio and MIDI specific messages are in the subpatches
-below:;
+#X msg 101 268 classlist;
 #X text 81 547 When using the "classlist" message \, note that some
 external Pd classes don't have a name. These are currently listed simply
 as "anonymous-class" in the output.;
-#X text 175 252 (long) list of all class names that have been loaded
+#X text 175 267 (long) list of all class names that have been loaded
 in the running instance of Pd. (Note: not all classes can be created
 in an object box.);
-#X msg 92 227 canvaslist;
-#X text 166 226 list of pointers to toplevel canvases in running Pd
+#X msg 92 242 canvaslist;
+#X text 166 241 list of pointers to toplevel canvases in running Pd
 instance;
 #X text 80 59 print all attributes directly to the console;
 #X text 11 20 get info from the Pd instance that is running your patch
 ;
+#X text 155 320 Audio and MIDI specific messages:;
+#X msg 83 169 libdir;
+#X text 132 168 directory where extra/ and doc/ are found;
 #X connect 12 0 15 0;
 #X connect 13 0 12 0;
 #X connect 14 0 12 0;
@@ -168,4 +169,5 @@ instance;
 #X connect 21 0 12 0;
 #X connect 23 0 12 0;
 #X connect 33 0 12 0;
-#X connect 37 0 12 0;
+#X connect 36 0 12 0;
+#X connect 41 0 12 0;
diff --git a/pd/src/x_interface.c b/pd/src/x_interface.c
index 10d414dbb..d3ba2a6df 100644
--- a/pd/src/x_interface.c
+++ b/pd/src/x_interface.c
@@ -833,18 +833,13 @@ void pdinfo_gui(t_pdinfo *x, t_symbol *s, int argc, t_atom *argv)
     info_out((t_text *)x, s, 1, at);
 }
 
-/* note: this might be wrong.  Not sure whether "libdir" means
-   something like /usr/lib/pd or the path where all the libdir externals
-   live-- i.e., /usr/lib/pd/extra */
+/* directory where extra and doc are found. Might also want to add
+   another method to return a list of all paths searched for libs-- i.e.,
+   "extrapath". */
 void pdinfo_libdir(t_pdinfo *x, t_symbol *s, int argc, t_atom *argv)
 {
     t_atom at[1];
-    t_symbol *nsym;
-    t_namelist *nl = pd_extrapath;
-    while (nl->nl_next)
-        nl = nl->nl_next;
-    nsym = gensym(nl->nl_string);
-    SETSYMBOL(at, nsym);
+    SETSYMBOL(at, sys_libdir);
     info_out((t_text *)x, s, 1, at);
 }
 
-- 
GitLab


From 0862b5b9f29605239e9ae5ebd4088f9887f5b426 Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Tue, 18 Jul 2017 17:33:52 -0400
Subject: [PATCH 02/98] add "platform" method to [pdinfo]

---
 pd/src/x_interface.c | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)

diff --git a/pd/src/x_interface.c b/pd/src/x_interface.c
index d3ba2a6df..bbff948b9 100644
--- a/pd/src/x_interface.c
+++ b/pd/src/x_interface.c
@@ -843,6 +843,26 @@ void pdinfo_libdir(t_pdinfo *x, t_symbol *s, int argc, t_atom *argv)
     info_out((t_text *)x, s, 1, at);
 }
 
+void pdinfo_platform(t_pdinfo *x, t_symbol *s, int argc, t_atom *argv)
+{
+    t_atom at[1];
+    t_symbol *p = gensym("unknown");
+#ifdef __APPLE__
+    p = gensym("darwin");
+#endif
+#ifdef __FreeBSD__
+    p = gensym("freebsd");
+#endif
+#ifdef _WIN32
+    p = gensym("win32");
+#endif
+#ifdef __linux__
+    p = gensym("linux");
+#endif
+    SETSYMBOL(at, p);
+    info_out((t_text *)x, s, 1, at);
+}
+
 void pdinfo_version(t_pdinfo *x, t_symbol *s, int argc, t_atom *argv)
 {
     int major=0, minor=0, bugfix=0;
@@ -930,6 +950,8 @@ void pdinfo_setup(void)
         gensym("midi-outdev"), A_GIMME, 0);
     class_addmethod(pdinfo_class, (t_method)pdinfo_midi_listdevs,
         gensym("midi-outdevlist"), A_GIMME, 0);
+    class_addmethod(pdinfo_class, (t_method)pdinfo_platform,
+        gensym("platform"), A_GIMME, 0);
     class_addmethod(pdinfo_class, (t_method)pdinfo_audio_samplerate,
         gensym("samplerate"), A_GIMME, 0);
     class_addmethod(pdinfo_class, (t_method)pdinfo_version,
-- 
GitLab


From dbb1f21863089c05e529d5c430fda493335fb4f8 Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Tue, 18 Jul 2017 18:00:21 -0400
Subject: [PATCH 03/98] add "arch" method to [pdinfo] and update help patch

---
 pd/doc/5.reference/pdinfo-help.pd | 48 +++++++++++++++++--------------
 pd/src/x_interface.c              | 19 ++++++++++++
 2 files changed, 46 insertions(+), 21 deletions(-)

diff --git a/pd/doc/5.reference/pdinfo-help.pd b/pd/doc/5.reference/pdinfo-help.pd
index 3cc5c2d3f..e87e1994f 100644
--- a/pd/doc/5.reference/pdinfo-help.pd
+++ b/pd/doc/5.reference/pdinfo-help.pd
@@ -1,4 +1,4 @@
-#N canvas 248 25 555 619 10;
+#N canvas 257 29 555 619 10;
 #X obj 0 595 cnv 15 552 21 empty \$0-pddp.cnv.footer empty 20 12 0
 14 -228856 -66577 0;
 #X obj 0 0 cnv 15 552 40 empty \$0-pddp.cnv.header pdinfo 3 12 0 18
@@ -46,19 +46,19 @@ version;
 #X obj 4 597 pddp/pddplink all_about_help_patches.pd -text Usage Guide
 ;
 #X obj 503 7 pdinfo;
-#X obj 39 299 pdinfo;
-#X msg 39 60 print;
-#X msg 89 216 version;
-#X obj 39 330 print pd-version;
-#X text 143 215 version of Pd that's running (MAJOR MINOR TEST);
-#X msg 83 193 samplerate;
-#X text 157 192 global samplerate;
-#X msg 70 116 dir;
-#X text 99 115 directory of the Pd executable;
-#X msg 64 86 blocksize;
-#X text 136 85 global blocksize;
-#X msg 77 146 dsp-status;
-#X text 152 146 whether dsp is turned on (0 = off \, 1 = on);
+#X obj 39 307 pdinfo;
+#X msg 39 52 print;
+#X msg 105 234 version;
+#X obj 39 334 print pd-version;
+#X text 159 233 version of Pd that's running (MAJOR MINOR TEST);
+#X msg 100 211 samplerate;
+#X text 174 210 global samplerate;
+#X msg 70 120 dir;
+#X text 99 119 directory of the Pd executable;
+#X msg 64 97 blocksize;
+#X text 136 96 global blocksize;
+#X msg 77 143 dsp-status;
+#X text 152 143 whether dsp is turned on (0 = off \, 1 = on);
 #N canvas 100 44 428 514 audio-attributes 0;
 #X obj 1 1 cnv 15 425 20 empty \$0-pddp.cnv.subheading empty 3 12 0
 14 -204280 -1 0;
@@ -145,22 +145,26 @@ followed by a semicolon and the output for that method.;
 audio-device and midi-device message in subpatches.;
 #X text 169 459 - output varies depending on the message sent to [pdinfo]
 ;
-#X msg 101 268 classlist;
+#X msg 101 280 classlist;
 #X text 81 547 When using the "classlist" message \, note that some
 external Pd classes don't have a name. These are currently listed simply
 as "anonymous-class" in the output.;
-#X text 175 267 (long) list of all class names that have been loaded
+#X text 170 278 (long) list of all class names that have been loaded
 in the running instance of Pd. (Note: not all classes can be created
 in an object box.);
-#X msg 92 242 canvaslist;
-#X text 166 241 list of pointers to toplevel canvases in running Pd
+#X msg 98 257 canvaslist;
+#X text 172 256 list of pointers to toplevel canvases in running Pd
 instance;
-#X text 80 59 print all attributes directly to the console;
+#X text 80 51 print all attributes directly to the console;
 #X text 11 20 get info from the Pd instance that is running your patch
 ;
 #X text 155 320 Audio and MIDI specific messages:;
-#X msg 83 169 libdir;
-#X text 132 168 directory where extra/ and doc/ are found;
+#X msg 83 166 libdir;
+#X text 132 165 directory where extra/ and doc/ are found;
+#X msg 54 75 arch;
+#X text 88 74 machine architecture: ia32 \, x64 \, or arm;
+#X msg 93 189 platform;
+#X text 152 188 linux \, freebsd \, darwin \, or win32;
 #X connect 12 0 15 0;
 #X connect 13 0 12 0;
 #X connect 14 0 12 0;
@@ -171,3 +175,5 @@ instance;
 #X connect 33 0 12 0;
 #X connect 36 0 12 0;
 #X connect 41 0 12 0;
+#X connect 43 0 12 0;
+#X connect 45 0 12 0;
diff --git a/pd/src/x_interface.c b/pd/src/x_interface.c
index bbff948b9..b35b7ec80 100644
--- a/pd/src/x_interface.c
+++ b/pd/src/x_interface.c
@@ -863,6 +863,23 @@ void pdinfo_platform(t_pdinfo *x, t_symbol *s, int argc, t_atom *argv)
     info_out((t_text *)x, s, 1, at);
 }
 
+void pdinfo_arch(t_pdinfo *x, t_symbol *s, int argc, t_atom *argv)
+{
+    t_atom at[1];
+    t_symbol *a = gensym("unknown");
+#ifdef __i386__
+    a = gensym("ia32");
+#endif
+#ifdef __x86_64__
+    a = gensym("x64");
+#endif
+#ifdef __arm__
+    a = gensym("arm");
+#endif
+    SETSYMBOL(at, a);
+    info_out((t_text *)x, s, 1, at);
+}
+
 void pdinfo_version(t_pdinfo *x, t_symbol *s, int argc, t_atom *argv)
 {
     int major=0, minor=0, bugfix=0;
@@ -902,6 +919,8 @@ void pdinfo_setup(void)
         sizeof(t_pdinfo),
         CLASS_DEFAULT, 0);
 
+    class_addmethod(pdinfo_class, (t_method)pdinfo_arch,
+        gensym("arch"), A_GIMME, 0);
     class_addmethod(pdinfo_class, (t_method)pdinfo_audio_api,
         gensym("audio-api"), A_DEFFLOAT, 0);
     class_addmethod(pdinfo_class, (t_method)pdinfo_audio_apilist,
-- 
GitLab


From 49a66be1d377dee6b89abff0b8160b6ab96e8bc3 Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Fri, 21 Jul 2017 19:53:12 -0400
Subject: [PATCH 04/98] force all iemlib classes to create without args

---
 externals/iemlib/iemlib2/src/iem_i_route.c    | 49 ++++++++++---------
 .../iemlib/iemlib2/src/parentdollarzero.c     |  1 -
 externals/iemlib/iemlib2/src/prepend_ascii.c  | 37 +++++++-------
 externals/iemlib/iemlib2/src/toggle_mess.c    |  9 ++--
 4 files changed, 51 insertions(+), 45 deletions(-)

diff --git a/externals/iemlib/iemlib2/src/iem_i_route.c b/externals/iemlib/iemlib2/src/iem_i_route.c
index ca4ed71ea..938dc6a0f 100644
--- a/externals/iemlib/iemlib2/src/iem_i_route.c
+++ b/externals/iemlib/iemlib2/src/iem_i_route.c
@@ -68,38 +68,41 @@ static void iem_i_route_free(t_iem_i_route *x)
 
 static void *iem_i_route_new(t_symbol *s, int argc, t_atom *argv)
 {
-  int n, i;
+  int n, i, first, last, off;
   t_outlet **out;
   t_iem_i_route *x = (t_iem_i_route *)pd_new(iem_i_route_class);
-  
-  if((argc >= 2)&&IS_A_FLOAT(argv,0)&&IS_A_FLOAT(argv,1))
+
+  if (argc) first = atom_getintarg(0, argc--, argv++); else first = 0;
+  if (argc) last = atom_getintarg(0, argc--, argv++); else last = 0;
+  if (argc) off = atom_getintarg(0, argc--, argv++); else off = 0;
+
+  if (first > last)
   {
-    x->x_first_element = (int)atom_getintarg(0, argc, argv);
-    x->x_last_element = (int)atom_getintarg(1, argc, argv);
-    if((argc >= 3)&&IS_A_FLOAT(argv,2))
-    {
-      i = (int)atom_getintarg(2, argc, argv);
-      x->x_first_element += i;
-      x->x_last_element += i;
-    }
-    x->x_out = (t_outlet **)getbytes((x->x_last_element-x->x_first_element+2) * sizeof(t_outlet *));
-    n = x->x_last_element - x->x_first_element + 2;
-    for(i=0, out=x->x_out; i<n; i++, out++)
-      *out = outlet_new(&x->x_obj, &s_list);
-    return (x);
+    post("iem_i_route: warning: illegal range bashed to 0");
+    first = last;
   }
-  else
+  if (last - first + 1 > 100)
   {
-    post("iem_i_route-ERROR: needs 3 floats!!");
-    return(0);
+    post("iem_i_route: warning: only 100 outlets allowed. Setting last "
+         "match value to %d", (int)(first + 98));
+    last = first + 98;
   }
+  x->x_first_element = first + off;
+  x->x_last_element = last + off;
+  x->x_out = (t_outlet **)getbytes((x->x_last_element-x->x_first_element+2) * sizeof(t_outlet *));
+  n = x->x_last_element - x->x_first_element + 2;
+  for(i=0, out=x->x_out; i<n; i++, out++)
+    *out = outlet_new(&x->x_obj, &s_list);
+  return (x);
 }
 
 void iem_i_route_setup(void)
 {
-  iem_i_route_class = class_new(gensym("iem_i_route"), (t_newmethod)iem_i_route_new,
-        (t_method)iem_i_route_free, sizeof(t_iem_i_route), 0, A_GIMME, 0);
-  class_addcreator((t_newmethod)iem_i_route_new, gensym("iiroute"), A_GIMME, 0);
+  iem_i_route_class = class_new(gensym("iem_i_route"),
+    (t_newmethod)iem_i_route_new, (t_method)iem_i_route_free,
+    sizeof(t_iem_i_route), 0, A_GIMME, 0);
+  class_addcreator((t_newmethod)iem_i_route_new, gensym("iiroute"),
+    A_GIMME, 0);
   class_addlist(iem_i_route_class, iem_i_route_list);
-//  class_sethelpsymbol(iem_i_route_class, gensym("iemhelp/help-iem_i_route"));
+  //class_sethelpsymbol(iem_i_route_class, gensym("iemhelp/help-iem_i_route"));
 }
diff --git a/externals/iemlib/iemlib2/src/parentdollarzero.c b/externals/iemlib/iemlib2/src/parentdollarzero.c
index 3f209b11d..8e7b65899 100644
--- a/externals/iemlib/iemlib2/src/parentdollarzero.c
+++ b/externals/iemlib/iemlib2/src/parentdollarzero.c
@@ -54,7 +54,6 @@ void parentdollarzero_setup(void)
 {
   parentdollarzero_class = class_new(gensym("parentdollarzero"), (t_newmethod)parentdollarzero_new,
            0, sizeof(t_parentdollarzero), 0, 0);
-  class_addcreator((t_newmethod)parentdollarzero_new, gensym("parent$0"), 0);
   class_addbang(parentdollarzero_class, (t_method)parentdollarzero_bang);
 //  class_sethelpsymbol(parentdollarzero_class, gensym("iemhelp/help-parentdollarzero"));
 }
diff --git a/externals/iemlib/iemlib2/src/prepend_ascii.c b/externals/iemlib/iemlib2/src/prepend_ascii.c
index 5c5d647ed..5f9a34466 100644
--- a/externals/iemlib/iemlib2/src/prepend_ascii.c
+++ b/externals/iemlib/iemlib2/src/prepend_ascii.c
@@ -83,28 +83,29 @@ static void prepend_ascii_free(t_prepend_ascii *x)
 
 static void *prepend_ascii_new(t_symbol *s, int ac, t_atom *av)
 {
+  t_atom dummy;
   if((ac <= 0) || (!IS_A_FLOAT(av,0)))
   {
-    post("ERROR: prepend_ascii need a float between 1 and 255 as 1. arg. !!!");
-    return(0);
+    post("WARNING: prepend_ascii need a float between 1 and 255 as "
+         "the 1st arg. Defaulting to 97 (a)");
+    SETFLOAT(&dummy, 97.);
+    av = &dummy;
+    ac = 1;
   }
-  else
-  {
-    t_prepend_ascii *x = (t_prepend_ascii *)pd_new(prepend_ascii_class);
-    char str[2];
-    int i;
+  t_prepend_ascii *x = (t_prepend_ascii *)pd_new(prepend_ascii_class);
+  char str[2];
+  int i;
     
-    x->x_size = 10 + ac;
-    x->x_at = (t_atom *)getbytes(x->x_size * sizeof(t_atom));
-    str[0] = (char)((int)(atom_getfloatarg(0,ac,av))&0xff);
-    str[1] = 0;
-    x->x_sym = gensym(str);
-    x->x_ac = ac - 1;
-    for(i=1; i<ac; i++)
-      x->x_at[i-1] = av[i];
-    outlet_new(&x->x_obj, &s_list);
-    return (x);
-  }
+  x->x_size = 10 + ac;
+  x->x_at = (t_atom *)getbytes(x->x_size * sizeof(t_atom));
+  str[0] = (char)((int)(atom_getfloatarg(0,ac,av))&0xff);
+  str[1] = 0;
+  x->x_sym = gensym(str);
+  x->x_ac = ac - 1;
+  for(i=1; i<ac; i++)
+    x->x_at[i-1] = av[i];
+  outlet_new(&x->x_obj, &s_list);
+  return (x);
 }
 
 void prepend_ascii_setup(void)
diff --git a/externals/iemlib/iemlib2/src/toggle_mess.c b/externals/iemlib/iemlib2/src/toggle_mess.c
index b6ffb95a7..06c0f3e64 100644
--- a/externals/iemlib/iemlib2/src/toggle_mess.c
+++ b/externals/iemlib/iemlib2/src/toggle_mess.c
@@ -79,14 +79,17 @@ static void toggle_mess_free(t_toggle_mess *x)
 
 static void *toggle_mess_new(t_symbol *s, int ac, t_atom *av)
 {
+  t_atom dummy;
   t_toggle_mess *x = (t_toggle_mess *)pd_new(toggle_mess_class);
   int i;
 
   if(!ac)
   {
-    post("toggle_mess-ERROR: must have at least one argument!");
-    x->x_at = (t_atom *)0;
-    return(0);
+    post("toggle_mess-WARNING: no arguments given. Defaulting to 0.");
+    //x->x_at = (t_atom *)0;
+    SETFLOAT(&dummy, 0.);
+    av = &dummy;
+    ac = 1;
   }
   x->x_ac = ac;
   x->x_at = (t_atom *)getbytes(ac * sizeof(t_atom));
-- 
GitLab


From dcd835da42a652ff76f6763a9d55ba1ffc3a2e0f Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Fri, 21 Jul 2017 22:57:50 -0400
Subject: [PATCH 05/98] use A_DEFSYM instead of A_SYMBOL in creation arguments

---
 externals/maxlib/score.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/externals/maxlib/score.c b/externals/maxlib/score.c
index 04ef1ff2d..787017259 100644
--- a/externals/maxlib/score.c
+++ b/externals/maxlib/score.c
@@ -278,7 +278,7 @@ static void *score_new(t_symbol *s, t_floatarg fskipindex, t_floatarg fskiptime)
 void score_setup(void)
 {
     score_class = class_new(gensym("score"), (t_newmethod)score_new,
-    	(t_method)score_free, sizeof(t_score), 0, A_SYMBOL, A_DEFFLOAT, A_DEFFLOAT, 0);
+    	(t_method)score_free, sizeof(t_score), 0, A_DEFSYM, A_DEFFLOAT, A_DEFFLOAT, 0);
     class_addmethod(score_class, (t_method)score_reset, gensym("reset"), 0);
 	class_addmethod(score_class, (t_method)score_resume, gensym("resume"), 0);
     class_addmethod(score_class, (t_method)score_start, gensym("start"), A_GIMME, 0);
@@ -294,8 +294,8 @@ void score_setup(void)
 void maxlib_score_setup(void)
 {
     score_class = class_new(gensym("maxlib_score"), (t_newmethod)score_new,
-    	(t_method)score_free, sizeof(t_score), 0, A_SYMBOL, A_DEFFLOAT, A_DEFFLOAT, 0);
-	class_addcreator((t_newmethod)score_new, gensym("score"), A_SYMBOL, A_DEFFLOAT, A_DEFFLOAT, 0);
+    	(t_method)score_free, sizeof(t_score), 0, A_DEFSYM, A_DEFFLOAT, A_DEFFLOAT, 0);
+	class_addcreator((t_newmethod)score_new, gensym("score"), A_DEFSYM, A_DEFFLOAT, A_DEFFLOAT, 0);
     class_addmethod(score_class, (t_method)score_reset, gensym("reset"), 0);
 	class_addmethod(score_class, (t_method)score_resume, gensym("resume"), 0);
     class_addmethod(score_class, (t_method)score_start, gensym("start"), A_GIMME, 0);
-- 
GitLab


From 1d02d9afd25717505816e403653da62ecec25701 Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Sat, 22 Jul 2017 18:31:56 -0400
Subject: [PATCH 06/98] force all unauthorized classes to instantiate with sane
 defaults (plus clear warning)

---
 externals/unauthorized/blinkenlights.c | 20 ++++++++++++--------
 externals/unauthorized/formant~.c      | 23 +++++++++++++++++++++--
 externals/unauthorized/randomblock~.c  | 12 +++++++++---
 externals/unauthorized/samplebox~.c    |  5 +++--
 externals/unauthorized/sonogram~.c     | 19 +++++++++++++++++--
 5 files changed, 62 insertions(+), 17 deletions(-)

diff --git a/externals/unauthorized/blinkenlights.c b/externals/unauthorized/blinkenlights.c
index 312639b79..0fbed35e3 100644
--- a/externals/unauthorized/blinkenlights.c
+++ b/externals/unauthorized/blinkenlights.c
@@ -159,23 +159,27 @@ static void *blinkenlights_new(t_float fwidth, t_float fheight, t_float fxpixsiz
     t_blinkenlights *x = (t_blinkenlights *)pd_new(blinkenlights_class);
     if ( fwidth <= 0 )
     {
-        post( "blinkenlights: wrong creation argument : width : %f", fwidth );
-        return NULL;
+        post( "blinkenlights: warning: 1st argument (width) is "
+              "too small : defaulting to 1" );
+        fwidth = 1.;
     }
     if ( fheight <= 0 )
     {
-        post( "blinkenlights: wrong creation argument : height : %f", fheight );
-        return NULL;
+        post( "blinkenlights: warning: 2nd argument (height) is too "
+              "small : defaulting to 1" );
+        fheight = 1.;
     }
     if ( fxpixsize <= 0 )
     {
-        post( "blinkenlights: wrong creation argument : x pixel size : %f", fxpixsize );
-        return NULL;
+        post( "blinkenlights: warning 3rd argument (x pixel size) is too "
+              " small : defaulting to 1" );
+        fxpixsize = 1.;
     }
     if ( fypixsize <= 0 )
     {
-        post( "blinkenlights: wrong creation argument : y pixel size : %f", fypixsize );
-        return NULL;
+        post( "blinkenlights: warning 4th argument (y pixel size)  is too "
+              "small : defaulting to 1" );
+        fypixsize = 1.;
     }
     x->x_width = (int) fwidth;
     x->x_height = (int) fheight;
diff --git a/externals/unauthorized/formant~.c b/externals/unauthorized/formant~.c
index 10fbe005b..5ef3b5ef6 100644
--- a/externals/unauthorized/formant~.c
+++ b/externals/unauthorized/formant~.c
@@ -229,8 +229,27 @@ static void *formant_new(t_floatarg fsize, t_floatarg ffreq, t_floatarg ffwidth,
 
     if ( fsize <= 0 || ffreq <= 0 || ffwidth <= 0 || fswidth <= 0 )
     {
-        error( "formant~ : missing or negative creation arguments" );
-        return NULL;
+        error( "formant~ : warning: missing or negative creation arguments" );
+        if (fsize <= 0)
+        {
+            post ("first argument defaulting to 1");
+            fsize = 1;
+        }
+        if (ffreq <= 0)
+        {
+            post ("first argument defaulting to 1");
+            ffreq = 1;
+        }
+        if (ffwidth <= 0)
+        {
+            post ("first argument defaulting to 1");
+            ffwidth = 1;
+        }
+        if (fswidth <= 0)
+        {
+            post ("first argument defaulting to 1");
+            fswidth = 1;
+        }
     }
 
     x->x_size = fsize;
diff --git a/externals/unauthorized/randomblock~.c b/externals/unauthorized/randomblock~.c
index a8940d2c3..002876e45 100644
--- a/externals/unauthorized/randomblock~.c
+++ b/externals/unauthorized/randomblock~.c
@@ -62,10 +62,16 @@ static void *randomblock_new(t_float flimit)
     t_randomblock *x = (t_randomblock *)pd_new(randomblock_class);
     outlet_new(&x->x_obj, &s_signal);
     inlet_new(&x->x_obj, &x->x_obj.ob_pd, &s_float, gensym("limit"));
-    if ( flimit <= 0 || flimit > RAND_MAX )
+    if ( flimit <= 0 )
     {
-        post( "randomblock~: wrong creation argument" );
-        return NULL;
+        post( "randomblock~: warning : argument too small : defaulting to 1" );
+        flimit = 1;
+    }
+    else if ( flimit > RAND_MAX )
+    {
+        post( "randomblock~: warning : argument too large : defaulting to %d",
+              RAND_MAX );
+        flimit = (t_float)RAND_MAX;
     }
     x->x_limit = (int) flimit;
     return(x);
diff --git a/externals/unauthorized/samplebox~.c b/externals/unauthorized/samplebox~.c
index 1c5a59afb..e0769976b 100644
--- a/externals/unauthorized/samplebox~.c
+++ b/externals/unauthorized/samplebox~.c
@@ -546,8 +546,9 @@ static void *samplebox_new(t_floatarg fsize)
 
     if ( fsize <= 0 )
     {
-        error( "samplebox~ : missing or negative creation arguments" );
-        return NULL;
+        error( "samplebox~ : warning : creation argument too small : "
+               "defaulting to 1" );
+        fsize = 1.;
     }
 
     x->x_size = fsize;
diff --git a/externals/unauthorized/sonogram~.c b/externals/unauthorized/sonogram~.c
index a854bef9e..ca7bfb1a3 100644
--- a/externals/unauthorized/sonogram~.c
+++ b/externals/unauthorized/sonogram~.c
@@ -2200,8 +2200,23 @@ static void *sonogram_new(t_floatarg fsize, t_floatarg fgraphic, t_floatarg fpha
 
     if ( fsize <= 0 || ( fgraphic != 0 && fgraphic != 1 ) || ( fphaso != 0 && fphaso != 1 ) )
     {
-        error( "sonogram~ : missing or negative creation arguments" );
-        return NULL;
+        post( "sonogram~ : warning : creation arguments out of range" );
+        if ( fsize <= 0 )
+        {
+            post( "argument 1 defaulting to 1" );
+            fsize = 1.;
+        }
+        if ( fgraphic != 0 && fgraphic != 1 )
+        {
+            post( "argument 2 defaulting to 0" );
+            fgraphic = 0.;
+        }
+        if ( fphaso != 0 && fphaso != 1 )
+        {
+            post( "argument 3 defaulting to 0" );
+            fphaso = 0.;
+        }
+
     }
 
     // activate graphical callbacks
-- 
GitLab


From 3384879657c4a3e7d35ff90e2cd4bd3d1680b697 Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Sat, 22 Jul 2017 18:42:56 -0400
Subject: [PATCH 07/98] fix up wrong path name/order in linux_make

---
 packages/linux_make/default.settings | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/packages/linux_make/default.settings b/packages/linux_make/default.settings
index 514ff0a6a..8f559a367 100644
--- a/packages/linux_make/default.settings
+++ b/packages/linux_make/default.settings
@@ -71,6 +71,6 @@ path31: /usr/lib/pd-l2ork/extra/ggee
 path32: /usr/lib/pd-l2ork/extra/ekext
 path33: /usr/lib/pd-l2ork/extra/flext
 path34: /usr/lib/pd-l2ork/extra/rjlib
-path35: /usr/lib/pd-l2ork/extra/lyon
-path36: /usr/lib/pd-l2ork/extra/disis
+path35: /usr/lib/pd-l2ork/extra/disis
+path36: /usr/lib/pd-l2ork/extra/lyonpotpourri
 npath: 36
-- 
GitLab


From 0fdd35c77571ba4830aa198b8e544c6592de7ca9 Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Sat, 22 Jul 2017 22:47:11 -0400
Subject: [PATCH 08/98] switch lyonpotpourri submodule to gitlab mirror. This
 is needed to make some quick fixes found by the test system (which we can
 later request to merge upstream)

---
 .gitmodules             | 2 +-
 externals/lyonpotpourri | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/.gitmodules b/.gitmodules
index 10994eb81..7a899bc70 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -15,4 +15,4 @@
 	url = https://git.purrdata.net/jwilkes/Gem.git
 [submodule "externals/lyonpotpourri"]
 	path = externals/lyonpotpourri
-	url = https://github.com/ericlyon/lyonpotpourri3.0.git
+	url = https://git.purrdata.net/jwilkes/lyonpotpourri3.0.git
diff --git a/externals/lyonpotpourri b/externals/lyonpotpourri
index 30afc2721..9e77f0697 160000
--- a/externals/lyonpotpourri
+++ b/externals/lyonpotpourri
@@ -1 +1 @@
-Subproject commit 30afc27214f58b671e7404021cadff3d0ddc362f
+Subproject commit 9e77f069796d278ecf26780555b3ce2bf1549fff
-- 
GitLab


From 756fbd5fc0121dc108e8e5a4f4c8d6dd7c5bbeec Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Sun, 23 Jul 2017 23:03:47 -0400
Subject: [PATCH 09/98] make classes instantiate with no arguments

---
 externals/bsaylor/partconv~.c | 14 ++++++++++++++
 externals/bsaylor/pvoc~.c     | 13 +++++++++++++
 2 files changed, 27 insertions(+)

diff --git a/externals/bsaylor/partconv~.c b/externals/bsaylor/partconv~.c
index d4d11fe37..80a108b7b 100644
--- a/externals/bsaylor/partconv~.c
+++ b/externals/bsaylor/partconv~.c
@@ -345,11 +345,25 @@ static void *partconv_new(t_symbol *s, int argc, t_atom *argv)
 	t_partconv *x = (t_partconv *)pd_new(partconv_class);
 
 	outlet_new(&x->x_obj, gensym("signal"));
+        t_atom sane_defaults[2];
 
 	if (argc != 2) {
+            /* Give some sane defaults with no args so we can at least
+               instantiate and get to the help patch */
+            if (!argc)
+            {
+                post("partconv~: warning: no arguments given");
+                SETSYMBOL(sane_defaults, &s_);
+                SETFLOAT(sane_defaults+1, 2.);
+                argc = 2;
+                argv = sane_defaults;
+            }
+            else
+            {
 		post("argc = %d", argc);
 		error("partconv~: usage: [partconv~ <arrayname> <partsize>]\n\t- partition size must be a power of 2 >= blocksize");
 		return NULL;
+            }
 	}
 
 	x->arrayname = atom_getsymbol(argv);
diff --git a/externals/bsaylor/pvoc~.c b/externals/bsaylor/pvoc~.c
index 30d656d84..62c38c505 100644
--- a/externals/bsaylor/pvoc~.c
+++ b/externals/bsaylor/pvoc~.c
@@ -315,14 +315,27 @@ static void *pvoc_new(t_symbol *s, int argc, t_atom *argv)
 {
 	t_pvoc *x = (t_pvoc *)pd_new(pvoc_class);
 	int i;
+        t_atom sane_defaults[3];
 
 	inlet_new(&x->x_obj, &x->x_obj.ob_pd, &s_signal, &s_signal);	// pitch-shift inlet
 	outlet_new(&x->x_obj, gensym("signal"));
 
 	if (argc != 3) {
+            if (!argc)
+            {
+                post("partconv~: warning: no arguments given");
+                SETSYMBOL(sane_defaults, &s_);
+                SETFLOAT(sane_defaults+1, 2.);
+                SETFLOAT(sane_defaults+2, 2.);
+                argc = 3;
+                argv = sane_defaults;
+            }
+            else
+            {
 		post("argc = %d", argc);
 		error("pvoc~: usage: [pvoc~ <arrayname> <fftsize> <overlap>]");
 		return NULL;
+            }
 	}
 
 	x->fftsize = atom_getfloatarg(1, argc, argv);
-- 
GitLab


From fab23d6293a69f9e37f917ee4f8ad9737a03fc6e Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Sun, 23 Jul 2017 23:13:28 -0400
Subject: [PATCH 10/98] add first draft of an external test suite

---
 scripts/external-tests.pd | 777 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 777 insertions(+)
 create mode 100644 scripts/external-tests.pd

diff --git a/scripts/external-tests.pd b/scripts/external-tests.pd
new file mode 100644
index 000000000..db9d2d323
--- /dev/null
+++ b/scripts/external-tests.pd
@@ -0,0 +1,777 @@
+#N canvas 154 25 751 635 12;
+#X msg 513 70 bang;
+#N canvas 273 114 533 496 get_extensions 0;
+#X obj 17 44 inlet;
+#X obj 17 70 bang;
+#X msg 17 105 platform;
+#X obj 17 131 pdinfo;
+#X obj 49 289 pdinfo;
+#X msg 49 261 arch;
+#X msg 17 205 .pd_linux;
+#X obj 17 156 select linux freebsd darwin win32;
+#X msg 355 205 .so;
+#X obj 399 205 print warning: unknown platform;
+#X obj 17 231 t a b;
+#X obj 49 315 sel ia32 x64 arm;
+#X msg 49 352 .l_i386;
+#X msg 119 352 .l_ia64;
+#X msg 195 352 .l_arm;
+#X obj 17 397 list;
+#X msg 106 205 .pd_darwin .d_fat;
+#X obj 299 397 list;
+#X msg 246 205 .dll .m_i386;
+#X obj 17 460 outlet;
+#X connect 0 0 1 0;
+#X connect 1 0 2 0;
+#X connect 2 0 3 0;
+#X connect 3 0 7 0;
+#X connect 4 0 11 0;
+#X connect 5 0 4 0;
+#X connect 6 0 10 0;
+#X connect 7 0 6 0;
+#X connect 7 1 6 0;
+#X connect 7 2 16 0;
+#X connect 7 3 18 0;
+#X connect 7 4 8 0;
+#X connect 7 4 9 0;
+#X connect 8 0 17 0;
+#X connect 10 0 15 0;
+#X connect 10 1 5 0;
+#X connect 11 0 12 0;
+#X connect 11 1 13 0;
+#X connect 11 2 14 0;
+#X connect 12 0 15 1;
+#X connect 13 0 15 1;
+#X connect 14 0 15 1;
+#X connect 15 0 19 0;
+#X connect 16 0 17 0;
+#X connect 17 0 19 0;
+#X connect 18 0 17 0;
+#X restore 97 345 pd get_extensions;
+#N canvas 453 108 450 323 get_libdir 0;
+#X obj 119 58 inlet;
+#X obj 119 135 pdinfo;
+#X obj 119 84 b;
+#X msg 119 110 libdir;
+#X obj 119 161 outlet;
+#X connect 0 0 2 0;
+#X connect 1 0 4 0;
+#X connect 2 0 3 0;
+#X connect 3 0 1 0;
+#X restore 513 95 pd get_libdir;
+#N canvas 107 123 756 233 load_hcs/folder_list 0;
+#X obj 306 40 inlet;
+#X obj 306 133 s pd-\$0-hcs/folder_list;
+#N canvas 0 0 450 300 \$0-hcs/folder_list 0;
+#X obj 5 5 receive 1003-fl-in;
+#X obj 5 30 /usr/lib/pd-l2ork/extra/hcs/folder_list;
+#X obj 5 55 send 1003-fl-out;
+#X connect 0 0 1 0;
+#X connect 1 0 2 0;
+#X restore 37 97 pd \$0-hcs/folder_list;
+#X obj 37 40 inlet;
+#X obj 37 65 s \$0-fl-in;
+#X obj 37 128 r \$0-fl-out;
+#X obj 37 154 outlet;
+#X msg 306 77 clear \, obj 5 5 receive \$0-fl-in \, obj 5 30 \$1/extra/hcs/folder_list
+\, obj 5 55 send \$0-fl-out \, connect 0 0 1 0 \, connect 1 0 2 0;
+#X connect 0 0 7 0;
+#X connect 3 0 4 0;
+#X connect 5 0 6 0;
+#X connect 7 0 1 0;
+#X restore 97 569 pd load_hcs/folder_list;
+#N canvas 0 0 450 300 add_.pd 0;
+#X obj 66 29 inlet;
+#X obj 66 55 list append .pd;
+#X obj 66 80 outlet;
+#X connect 0 0 1 0;
+#X connect 1 0 2 0;
+#X restore 97 371 pd add_.pd;
+#X obj 97 425 t a a;
+#X obj 97 487 pack s s s;
+#X obj 37 19 loadbang;
+#X obj 130 453 s \$0-ext;
+#X obj 332 596 r \$0-reset;
+#X obj 150 317 s \$0-reset;
+#X msg 150 285 bang;
+#N canvas 0 0 450 300 remove_ext 0;
+#X obj 28 30 inlet;
+#X obj 78 150 r \$0-ext;
+#X obj 78 205 list length;
+#X obj 28 55 list fromsymbol;
+#X obj 28 260 list split;
+#X obj 28 80 t a a;
+#X obj 60 115 list length;
+#X obj 60 230 -;
+#X obj 28 285 list tosymbol;
+#X obj 28 310 outlet;
+#X obj 78 175 list fromsymbol;
+#X connect 0 0 3 0;
+#X connect 1 0 10 0;
+#X connect 2 0 7 1;
+#X connect 3 0 5 0;
+#X connect 4 0 8 0;
+#X connect 5 0 4 0;
+#X connect 5 1 6 0;
+#X connect 6 0 7 0;
+#X connect 7 0 4 1;
+#X connect 8 0 9 0;
+#X connect 10 0 2 0;
+#X restore 97 624 pd remove_ext;
+#N canvas 314 37 450 472 remove_help 0;
+#X obj 40 14 inlet;
+#X obj 126 18 r \$0-ext;
+#X obj 126 43 sel .pd;
+#X msg 126 98 1;
+#X msg 169 98 0;
+#X obj 169 71 b;
+#X obj 40 136 list prepend;
+#X obj 40 161 route 0 1;
+#X obj 122 251 list fromsymbol;
+#X obj 122 276 t a a;
+#X obj 154 304 list length;
+#X obj 154 329 - 8;
+#X obj 122 363 list split;
+#X obj 155 394 list tosymbol;
+#X obj 155 419 sel -help.pd;
+#X msg 155 444 0;
+#X obj 116 485 spigot;
+#X obj 90 189 t a a b;
+#X msg 353 448 1;
+#X obj 40 526 symbol;
+#X obj 40 551 outlet;
+#X obj 117 218 symbol;
+#X connect 0 0 6 0;
+#X connect 1 0 2 0;
+#X connect 2 0 3 0;
+#X connect 2 1 5 0;
+#X connect 3 0 6 1;
+#X connect 4 0 6 1;
+#X connect 5 0 4 0;
+#X connect 6 0 7 0;
+#X connect 7 0 19 0;
+#X connect 7 1 17 0;
+#X connect 8 0 9 0;
+#X connect 9 0 12 0;
+#X connect 9 1 10 0;
+#X connect 10 0 11 0;
+#X connect 11 0 12 1;
+#X connect 12 1 13 0;
+#X connect 13 0 14 0;
+#X connect 14 0 15 0;
+#X connect 15 0 16 1;
+#X connect 16 0 19 0;
+#X connect 17 0 16 0;
+#X connect 17 1 21 0;
+#X connect 17 2 18 0;
+#X connect 18 0 16 1;
+#X connect 19 0 20 0;
+#X connect 21 0 8 0;
+#X restore 97 594 pd remove_help;
+#X obj 513 120 s \$0-libdir;
+#X text 293 407 \$0-ext - library extension (platform specific);
+#X text 293 427 \$0-libdir - directory containing doc and extra;
+#X text 293 447 \$0-reset - reset state for each libdir;
+#X obj 197 453 r \$0-libdir;
+#X obj 77 285 t a b a b;
+#N canvas 443 86 450 557 get-creator-names 0;
+#X obj 41 22 inlet;
+#X obj 51 316 outlet;
+#X obj 141 54 r \$0-last-objectmaker-methodspace-length;
+#X obj 100 167 -;
+#X obj 41 107 classinfo objectmaker;
+#X msg 41 82 methods;
+#X obj 51 208 until;
+#X obj 51 249 f;
+#X obj 94 249 + 1;
+#X obj 51 284 classinfo objectmaker;
+#X obj 151 181 t a;
+#X obj 41 47 bang;
+#X connect 0 0 11 0;
+#X connect 2 0 3 1;
+#X connect 2 0 10 0;
+#X connect 3 0 6 0;
+#X connect 4 0 3 0;
+#X connect 5 0 4 0;
+#X connect 6 0 7 0;
+#X connect 7 0 8 0;
+#X connect 7 0 9 0;
+#X connect 8 0 7 1;
+#X connect 9 0 1 0;
+#X connect 10 0 7 1;
+#X connect 11 0 5 0;
+#X restore 77 686 pd get-creator-names;
+#N canvas 227 231 450 346 test-object 0;
+#X obj 86 36 inlet;
+#X text 132 34 creator_name argtype1 argtype2 etc.;
+#N canvas 150 78 649 452 right_outlet_for_aliases 0;
+#X obj 70 25 inlet;
+#X obj 70 50 t a a;
+#X obj 102 78 list split 1;
+#X obj 102 103 t b a;
+#X msg 102 128 0;
+#X obj 102 183 b;
+#X msg 102 208 0;
+#X msg 162 208 1;
+#X obj 70 248 list prepend;
+#X obj 70 273 route 0 1;
+#X obj 70 358 outlet;
+#X obj 121 358 outlet;
+#X obj 102 158 classinfo;
+#X text 196 23 Check if we're a lone creator name with no corresponding
+class name. If so \, we are an alias and should skip the next class-based
+test(s) by going to the right outlet.;
+#X obj 70 298 list;
+#X obj 107 298 list;
+#X connect 0 0 1 0;
+#X connect 1 0 8 0;
+#X connect 1 1 2 0;
+#X connect 2 0 3 0;
+#X connect 3 0 4 0;
+#X connect 3 1 12 1;
+#X connect 4 0 12 0;
+#X connect 5 0 6 0;
+#X connect 6 0 8 1;
+#X connect 7 0 8 1;
+#X connect 8 0 9 0;
+#X connect 9 0 14 0;
+#X connect 9 1 15 0;
+#X connect 12 0 5 0;
+#X connect 12 1 7 0;
+#X connect 14 0 10 0;
+#X connect 15 0 11 0;
+#X restore 86 61 pd right_outlet_for_aliases;
+#N canvas 181 94 522 576 namespace_collisions 0;
+#X obj 40 15 inlet;
+#X obj 60 98 list split 1;
+#X obj 60 123 t b a;
+#X msg 60 148 externdir;
+#X obj 310 63 r \$0-current-libdir-name;
+#X obj 219 63 r \$0-libdir;
+#X obj 180 108 symbol;
+#X obj 246 107 symbol;
+#X msg 180 168 symbol \$1/extra/\$2;
+#X obj 60 174 classinfo;
+#X obj 60 232 select;
+#X obj 40 40 t a a b b;
+#X msg 60 257 0;
+#X obj 98 256 b;
+#X msg 98 281 1;
+#X obj 40 321 list prepend;
+#X obj 40 346 route 0 1;
+#X obj 40 521 outlet;
+#X obj 70 457 s \$0-fail;
+#X obj 70 403 pack s s s;
+#X obj 70 377 list split 1;
+#X obj 60 199 trigger anything anything;
+#X msg 70 431 \$1: externdir mismatch: expected \$2 but got \$3;
+#X obj 180 143 pack s s;
+#X obj 40 489 list;
+#X connect 0 0 11 0;
+#X connect 1 0 2 0;
+#X connect 2 0 3 0;
+#X connect 2 1 9 1;
+#X connect 3 0 9 0;
+#X connect 4 0 7 1;
+#X connect 5 0 6 1;
+#X connect 6 0 23 0;
+#X connect 7 0 23 1;
+#X connect 8 0 10 1;
+#X connect 8 0 19 1;
+#X connect 9 0 21 0;
+#X connect 10 0 12 0;
+#X connect 10 1 13 0;
+#X connect 11 0 15 0;
+#X connect 11 1 1 0;
+#X connect 11 2 6 0;
+#X connect 11 3 7 0;
+#X connect 12 0 15 1;
+#X connect 13 0 14 0;
+#X connect 14 0 15 1;
+#X connect 15 0 16 0;
+#X connect 16 0 24 0;
+#X connect 16 1 20 0;
+#X connect 19 0 22 0;
+#X connect 20 0 19 0;
+#X connect 21 0 10 0;
+#X connect 21 1 19 2;
+#X connect 22 0 18 0;
+#X connect 23 0 8 0;
+#X connect 24 0 17 0;
+#X restore 86 101 pd namespace_collisions;
+#N canvas 104 25 740 671 load_the_object 0;
+#X obj 22 13 inlet;
+#X obj 86 115 list split 1;
+#N canvas 238 121 613 490 set_args 0;
+#X obj 36 20 inlet;
+#N canvas 245 192 382 392 drip 0;
+#X obj 67 30 inlet;
+#X obj 102 83 list length;
+#X obj 102 108 until;
+#X obj 102 163 f;
+#X obj 102 188 + 1;
+#X msg 274 263 set;
+#X msg 66 307 \$1 \,;
+#X obj 66 263 list;
+#X msg 102 263 adddollar \$1 \, addcomma;
+#X msg 150 126 0;
+#X obj 66 332 symbol;
+#X obj 66 357 outlet;
+#X obj 67 55 trigger anything anything bang;
+#X obj 144 224 b;
+#X connect 0 0 12 0;
+#X connect 1 0 2 0;
+#X connect 2 0 3 0;
+#X connect 3 0 4 0;
+#X connect 4 0 3 1;
+#X connect 4 0 8 0;
+#X connect 5 0 6 0;
+#X connect 6 0 10 0;
+#X connect 7 0 6 0;
+#X connect 8 0 6 0;
+#X connect 9 0 3 1;
+#X connect 10 0 11 0;
+#X connect 12 0 7 0;
+#X connect 12 1 1 0;
+#X connect 12 2 5 0;
+#X connect 12 2 9 0;
+#X connect 12 2 13 0;
+#X connect 13 0 7 1;
+#X restore 139 78 pd drip;
+#X msg 239 157 add2 \$0-test-array;
+#X msg 139 158 add2 1e+06;
+#X msg 518 157 set;
+#X msg 139 203;
+#X obj 36 45 trigger bang anything anything;
+#X obj 139 248 outlet;
+#X text 359 226 With A_GIMME we have no way to figure out the proper
+args \, so we just stay blank here and hope the external author made
+sane defaults that at least allow the object to create with no arguments
+given., f 22;
+#X obj 139 103 select A_FLOAT A_SYMBOL A_GIMME A_DEFSYM A_DEFFLOAT
+;
+#X text 358 400 Same with A_DEFSYM and A_DEFFLOAT;
+#X text 31 307 Unforunately some externals don't have sane defaults--
+they require arguments just to instantiate. Here we fill in some dummy
+arguments in order to continue the tests, f 45;
+#X msg 388 157 add2;
+#X obj 518 104 t b b;
+#X obj 550 248 outlet;
+#X connect 0 0 6 0;
+#X connect 1 0 9 0;
+#X connect 2 0 5 0;
+#X connect 3 0 5 0;
+#X connect 4 0 5 0;
+#X connect 5 0 7 0;
+#X connect 6 0 5 0;
+#X connect 6 1 1 0;
+#X connect 6 2 13 0;
+#X connect 9 0 3 0;
+#X connect 9 1 2 0;
+#X connect 9 2 12 0;
+#X connect 9 3 12 0;
+#X connect 9 4 12 0;
+#X connect 12 0 5 0;
+#X connect 13 0 4 0;
+#X connect 13 1 14 0;
+#X restore 193 168 pd set_args;
+#X obj 126 140 route bang;
+#X obj 86 213 list;
+#X obj 86 351 s pd-\$0-load_the_object_subpatch;
+#X obj 86 238 t a b;
+#X msg 118 264 clear;
+#X text 216 107 Try to instantiate the object and connect up the primary
+inlet and outlet;
+#X msg 54 400 find \$1;
+#X msg 86 291 obj 5 30 \$@ \, obj 5 100 r \$0-load_canvasinfo_input
+\, obj 5 130 canvasinfo \, obj 5 160 s \$0-load_canvasinfo_output \,
+connect 1 0 2 0 \, connect 2 0 3 0;
+#X obj 54 425 s \$0-load_canvasinfo_input;
+#X obj 54 450 r \$0-load_canvasinfo_output;
+#X obj 54 475 list split 1;
+#X text 261 399 <-- find the object by box text-- it was the first
+one on the canvas to get created so it will get returned first if there
+are any duplicate matches;
+#X text 149 475 <-- filter out any duplicate matches from our "helper"
+object chain;
+#X obj 54 500 t b a;
+#X msg 54 525 class;
+#X obj 54 550 objectinfo;
+#X obj 54 575 select text;
+#X text 140 574 <-- the "text" class is an internal class that essentially
+represents an object box that currently holds no object. So if we query
+our object and get "text" here \, it means Pd couldn't load the object.
+;
+#X obj 54 376 trigger anything anything;
+#N canvas 365 98 450 323 fail 0;
+#X obj 41 34 inlet;
+#X obj 112 34 inlet;
+#X text 153 34 creator name;
+#X obj 41 98 symbol;
+#X obj 41 175 s \$0-fail;
+#X obj 112 59 list split 1;
+#X msg 41 150 couldn't create object '\$1';
+#X connect 0 0 3 0;
+#X connect 1 0 5 0;
+#X connect 3 0 6 0;
+#X connect 5 0 3 1;
+#X connect 6 0 4 0;
+#X restore 54 600 pd fail;
+#X obj 22 625 outlet;
+#N canvas 436 87 569 401 plain_then_with_libdir_prefix 0;
+#X obj 35 26 inlet;
+#X text 128 26 try both the lone creator name and the libdir prefix:
+e.g. \, foo and libdir/foo;
+#X text 128 156 we could probably add an absolute path here as well
+if we want to test that \, too.;
+#X text 128 66 This extra test was added because it appears miXed/cyclone
+is doing strange things with the libdir prefixes. For example-- maxtrix~
+requires two float args while cyclone/matrix~ just segfaults. There
+may be other oddities in external libs with regard to libdir prefixes.
+;
+#X obj 88 246 r \$0-current-libdir-name;
+#X obj 35 281 pack s s;
+#X obj 35 391 outlet;
+#X msg 35 306 symbol \$1 \, symbol \$2/\$1;
+#X obj 35 201 list split 1;
+#X obj 330 246 t a;
+#X obj 35 358 list append;
+#X connect 0 0 8 0;
+#X connect 4 0 5 1;
+#X connect 5 0 7 0;
+#X connect 7 0 10 0;
+#X connect 8 0 5 0;
+#X connect 8 1 9 0;
+#X connect 9 0 10 1;
+#X connect 10 0 6 0;
+#X restore 128 57 pd plain_then_with_libdir_prefix;
+#X obj 22 38 t a a;
+#X obj 54 89 t a a;
+#X connect 0 0 25 0;
+#X connect 1 0 4 0;
+#X connect 1 1 3 0;
+#X connect 2 0 4 1;
+#X connect 2 1 4 1;
+#X connect 3 0 4 1;
+#X connect 3 1 2 0;
+#X connect 4 0 6 0;
+#X connect 6 0 10 0;
+#X connect 6 1 7 0;
+#X connect 7 0 5 0;
+#X connect 9 0 11 0;
+#X connect 10 0 5 0;
+#X connect 12 0 13 0;
+#X connect 13 0 16 0;
+#X connect 16 0 17 0;
+#X connect 16 1 18 1;
+#X connect 17 0 18 0;
+#X connect 18 0 19 0;
+#X connect 19 0 22 0;
+#X connect 21 0 9 0;
+#X connect 21 1 22 1;
+#X connect 25 0 23 0;
+#X connect 25 1 24 0;
+#X connect 25 1 26 0;
+#X connect 26 0 21 0;
+#X connect 26 1 1 0;
+#X restore 86 156 pd load_the_object;
+#X obj 272 101 t a;
+#N canvas 268 243 450 346 \$0-load_the_object_subpatch 0;
+#X restore 231 157 pd \$0-load_the_object_subpatch;
+#X msg 86 241 clear;
+#X obj 86 266 s pd-\$0-load_the_object_subpatch;
+#X connect 0 0 2 0;
+#X connect 2 0 3 0;
+#X connect 2 1 5 0;
+#X connect 3 0 4 0;
+#X connect 4 0 7 0;
+#X connect 5 0 4 0;
+#X connect 7 0 8 0;
+#X restore 77 716 pd test-object;
+#X obj 249 340 classinfo objectmaker;
+#X msg 249 315 methods;
+#X text 293 467 \$0-last-objectmaker-methodspace-length;
+#X obj 249 370 s \$0-last-objectmaker-methodspace-length;
+#X text 293 487 \$0-current-libdir-name;
+#X text 293 507 \$0-fail;
+#N canvas 245 192 382 392 drip 0;
+#X obj 67 30 inlet;
+#X obj 102 83 list length;
+#X obj 102 108 until;
+#X obj 102 163 f;
+#X obj 102 188 + 1;
+#X msg 274 263 set;
+#X msg 66 307 \$1 \, \$2 \, \$3 \, \$4 \, \$5 \, \$6 \, \$7 \, \$8
+\, \$9 \, \$10 \, \$11 \, \$12 \, \$13 \, \$14 \, \$15 \, \$16 \, \$17
+\, \$18 \, \$19 \, \$20 \, \$21 \, \$22 \, \$23 \, \$24 \, \$25 \,
+\$26 \, \$27 \, \$28 \, \$29 \, \$30 \, \$31 \, \$32 \, \$33 \,;
+#X obj 66 263 list;
+#X msg 102 263 adddollar \$1 \, addcomma;
+#X msg 150 126 0;
+#X obj 66 332 symbol;
+#X obj 66 357 outlet;
+#X obj 67 55 trigger anything anything bang;
+#X obj 144 224 b;
+#X connect 0 0 12 0;
+#X connect 1 0 2 0;
+#X connect 2 0 3 0;
+#X connect 3 0 4 0;
+#X connect 4 0 3 1;
+#X connect 4 0 8 0;
+#X connect 5 0 6 0;
+#X connect 6 0 10 0;
+#X connect 7 0 6 0;
+#X connect 8 0 6 0;
+#X connect 9 0 3 1;
+#X connect 10 0 11 0;
+#X connect 12 0 7 0;
+#X connect 12 1 1 0;
+#X connect 12 2 5 0;
+#X connect 12 2 9 0;
+#X connect 12 2 13 0;
+#X connect 13 0 7 1;
+#X restore 77 198 pd drip;
+#N canvas 245 192 382 392 drip 0;
+#X obj 67 30 inlet;
+#X obj 102 83 list length;
+#X obj 102 108 until;
+#X obj 102 163 f;
+#X obj 102 188 + 1;
+#X msg 274 263 set;
+#X msg 66 307 \$1 \, \$2 \, \$3 \,;
+#X obj 66 263 list;
+#X msg 102 263 adddollar \$1 \, addcomma;
+#X msg 150 126 0;
+#X obj 66 332 symbol;
+#X obj 66 357 outlet;
+#X obj 67 55 trigger anything anything bang;
+#X obj 144 224 b;
+#X connect 0 0 12 0;
+#X connect 1 0 2 0;
+#X connect 2 0 3 0;
+#X connect 3 0 4 0;
+#X connect 4 0 3 1;
+#X connect 4 0 8 0;
+#X connect 5 0 6 0;
+#X connect 6 0 10 0;
+#X connect 7 0 6 0;
+#X connect 8 0 6 0;
+#X connect 9 0 3 1;
+#X connect 10 0 11 0;
+#X connect 12 0 7 0;
+#X connect 12 1 1 0;
+#X connect 12 2 5 0;
+#X connect 12 2 9 0;
+#X connect 12 2 13 0;
+#X connect 13 0 7 1;
+#X restore 97 398 pd drip;
+#X msg 97 542 list \$3/extra/\$2/*\$1;
+#N canvas 500 53 450 404 test_path 0;
+#X obj 41 33 inlet;
+#X obj 41 138 outlet;
+#X obj 94 33 r \$0-libdir;
+#X obj 41 63 pack s s;
+#X msg 41 113 symbol \$2/extra/\$1;
+#X connect 0 0 3 0;
+#X connect 2 0 3 1;
+#X connect 3 0 4 0;
+#X connect 4 0 1 0;
+#X restore 269 569 pd test_path;
+#X obj 269 594 t a b;
+#N canvas 384 25 589 486 test_load_and_path_with_declare 0;
+#X obj 64 21 inlet;
+#N canvas 0 0 450 300 \$0-load_declare 0;
+#X restore 647 149 pd \$0-load_declare;
+#X obj 153 161 f;
+#X obj 183 161 + 1;
+#X obj 153 186 * 30;
+#X obj 153 216 pack f s;
+#X obj 153 291 s pd-\$0-load_declare;
+#X obj 596 22 inlet;
+#X obj 596 77 t b b;
+#X msg 171 132 0;
+#X msg 628 246 clear;
+#X msg 153 246 obj 5 \$1 declare -lib \$2;
+#X obj 64 56 trigger bang bang anything;
+#X msg 64 246 clear;
+#X text 59 324 Load each object by dynamically instantiating a [declare
+-lib libname]. We must clear the subpatch afterward as well to make
+sure we don't accidentally start with some loaded libs after editing
+this patch. Since Pd doesn't have any way to unload a library this
+works.;
+#X obj 334 21 inlet;
+#X obj 423 161 f;
+#X obj 453 161 + 1;
+#X obj 423 186 * 30;
+#X obj 423 216 pack f s;
+#X msg 441 132 0;
+#X obj 334 56 trigger bang bang anything;
+#X msg 334 246 clear;
+#X msg 423 246 obj 5 \$1 declare -path \$2;
+#X text 111 21 load a lib;
+#X text 380 22 set a path;
+#X connect 0 0 12 0;
+#X connect 2 0 3 0;
+#X connect 2 0 4 0;
+#X connect 3 0 2 1;
+#X connect 4 0 5 0;
+#X connect 5 0 11 0;
+#X connect 7 0 8 0;
+#X connect 8 0 9 0;
+#X connect 8 0 20 0;
+#X connect 8 1 10 0;
+#X connect 9 0 2 1;
+#X connect 10 0 6 0;
+#X connect 11 0 6 0;
+#X connect 12 0 13 0;
+#X connect 12 1 2 0;
+#X connect 12 2 5 1;
+#X connect 13 0 6 0;
+#X connect 15 0 21 0;
+#X connect 16 0 17 0;
+#X connect 16 0 18 0;
+#X connect 17 0 16 1;
+#X connect 18 0 19 0;
+#X connect 19 0 23 0;
+#X connect 20 0 16 1;
+#X connect 21 0 22 0;
+#X connect 21 1 16 0;
+#X connect 21 2 19 1;
+#X connect 22 0 6 0;
+#X connect 23 0 6 0;
+#X restore 97 654 pd test_load_and_path_with_declare;
+#N canvas 259 121 571 514 results 0;
+#X obj 62 25 inlet;
+#X obj 235 33 r \$0-current-libdir-name;
+#X obj 146 33 r \$0-fail;
+#X obj 146 86 list prepend;
+#X msg 235 58 \$1:;
+#X obj 146 187 print error;
+#X text 251 141 add counter;
+#X obj 156 214 b;
+#X obj 156 239 f;
+#X obj 196 239 + 1;
+#X floatatom 196 276 5 0 0 0 failures - -, f 5;
+#X obj 62 258 f;
+#X msg 94 327 gui;
+#X obj 94 352 pdinfo;
+#X obj 62 384 list prepend;
+#X msg 180 389 all tests succeeded!;
+#X obj 180 414 print info;
+#X obj 180 324 sel 0 1;
+#X msg 343 389 1 test failed;
+#X msg 356 359 \$1 tests failed;
+#X obj 62 410 route 0;
+#X obj 62 435 != 0;
+#X obj 62 485 s pd;
+#X msg 62 460 quit \$1;
+#X obj 343 414 print error;
+#X obj 146 112 list prepend add;
+#X obj 146 137 list trim;
+#X obj 146 162 textfile;
+#X obj 62 283 t a b a b;
+#X obj 79 60 t b b;
+#X msg 22 123 rewind;
+#X obj 22 83 until;
+#X connect 0 0 11 0;
+#X connect 1 0 4 0;
+#X connect 2 0 3 0;
+#X connect 2 0 7 0;
+#X connect 3 0 25 0;
+#X connect 4 0 3 1;
+#X connect 7 0 8 0;
+#X connect 8 0 9 0;
+#X connect 9 0 8 1;
+#X connect 9 0 10 0;
+#X connect 9 0 11 1;
+#X connect 11 0 28 0;
+#X connect 12 0 13 0;
+#X connect 13 0 14 1;
+#X connect 14 0 20 0;
+#X connect 15 0 16 0;
+#X connect 17 0 15 0;
+#X connect 17 1 18 0;
+#X connect 17 2 19 0;
+#X connect 18 0 24 0;
+#X connect 19 0 24 0;
+#X connect 20 0 21 0;
+#X connect 21 0 23 0;
+#X connect 23 0 22 0;
+#X connect 25 0 26 0;
+#X connect 26 0 27 0;
+#X connect 27 0 5 0;
+#X connect 27 1 31 1;
+#X connect 28 0 14 0;
+#X connect 28 1 12 0;
+#X connect 28 2 17 0;
+#X connect 28 3 29 0;
+#X connect 29 0 31 0;
+#X connect 29 1 30 0;
+#X connect 30 0 27 0;
+#X connect 31 0 27 0;
+#X restore 37 756 pd results;
+#X obj 249 284 s \$0-current-libdir-name;
+#X obj 77 223 trigger anything anything;
+#X obj 674 284 t a;
+#X obj 674 504 t a;
+#X msg 77 72 libdir cyclone zexy creb cxc iemlib list-abs mapping markex
+maxlib memento mjlib motex osx pddp pdogg pixeltango pmpd rradical
+sigpack smlib unauthorized vbap pan freeverb~ hcs jmmmp ext13 ggee
+iem_anything ekext hexloader disis lyonpotpourri;
+#X obj 37 44 t b b b b;
+#N canvas 340 199 450 300 libs_not_loaded_by_default 1;
+#X obj 10 11 inlet;
+#X obj 10 231 outlet;
+#X msg 10 36 adaptive arraysize autotune~ bassemu~ bob~ boids bonk~
+bsaylor choice comport controctopus fluid~ hid iem16 iem_adaptfilt
+iem_ambi iem_bin_ambi iem_delay iemgui iemmatrix iem_roomsim iem_spec2
+iem_tab iemxmlrpc jasch_lib K12 la-kitchen loop~ lrshift~ memento-p
+mjlib moocow moonlib motex mrpeach nsend pan pd~ pdcontainer pd-wavelet
+pique plugin~ pmpd purepd rjlib rradical rtc sfruit sigmund~ stdout
+timestretch tof windowing;
+#X text 110 172 ratchet up as we go;
+#X obj 10 173 list split 12;
+#X connect 0 0 2 0;
+#X connect 2 0 4 0;
+#X connect 4 0 1 0;
+#X restore 57 164 pd libs_not_loaded_by_default;
+#X connect 0 0 2 0;
+#X connect 1 0 4 0;
+#X connect 2 0 14 0;
+#X connect 3 0 13 0;
+#X connect 4 0 29 0;
+#X connect 5 0 6 0;
+#X connect 5 1 8 0;
+#X connect 6 0 30 0;
+#X connect 7 0 40 0;
+#X connect 9 0 33 2;
+#X connect 11 0 10 0;
+#X connect 12 0 33 0;
+#X connect 13 0 12 0;
+#X connect 18 0 6 2;
+#X connect 18 0 3 1;
+#X connect 19 0 20 0;
+#X connect 19 1 1 0;
+#X connect 19 2 6 1;
+#X connect 19 3 10 0;
+#X connect 19 3 23 0;
+#X connect 20 0 21 0;
+#X connect 22 0 25 0;
+#X connect 23 0 22 0;
+#X connect 28 0 36 0;
+#X connect 29 0 5 0;
+#X connect 30 0 3 0;
+#X connect 31 0 32 0;
+#X connect 32 0 33 1;
+#X connect 32 1 33 2;
+#X connect 36 0 19 0;
+#X connect 36 1 35 0;
+#X connect 36 1 37 0;
+#X connect 37 0 38 0;
+#X connect 38 0 31 0;
+#X connect 39 0 28 0;
+#X connect 40 0 34 0;
+#X connect 40 1 41 0;
+#X connect 40 2 39 0;
+#X connect 40 3 0 0;
+#X connect 41 0 28 0;
-- 
GitLab


From f2f04f3d662d332a8c7926691118bd04df00cd5f Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Mon, 24 Jul 2017 20:15:30 -0400
Subject: [PATCH 11/98] make all cyclone classes instantiate when no arguments
 are provided

---
 externals/miXed/cyclone/hammer/Clip.c     |   1 -
 externals/miXed/cyclone/hammer/pv.c       |   9 +-
 externals/miXed/cyclone/sickle/Clip.c     |   1 -
 externals/miXed/cyclone/sickle/Line.c     |   1 -
 externals/miXed/cyclone/sickle/Snapshot.c |   1 -
 externals/miXed/cyclone/sickle/matrix.c   | 136 ++++++++++++----------
 6 files changed, 81 insertions(+), 68 deletions(-)

diff --git a/externals/miXed/cyclone/hammer/Clip.c b/externals/miXed/cyclone/hammer/Clip.c
index d0c54ebf5..d3660363d 100644
--- a/externals/miXed/cyclone/hammer/Clip.c
+++ b/externals/miXed/cyclone/hammer/Clip.c
@@ -142,7 +142,6 @@ void Clip_setup(void)
 			   (t_method)clip_free,
 			   sizeof(t_clip), 0,
 			   A_GIMME, 0);
-    class_addcreator((t_newmethod)clip_new, gensym("clip"), A_GIMME, 0);
     class_addcreator((t_newmethod)clip_new, gensym("cyclone/clip"), A_GIMME, 0);
     class_addfloat(clip_class, clip_float);
     class_addlist(clip_class, clip_list);
diff --git a/externals/miXed/cyclone/hammer/pv.c b/externals/miXed/cyclone/hammer/pv.c
index 85f4ddcc6..81feebf0e 100644
--- a/externals/miXed/cyclone/hammer/pv.c
+++ b/externals/miXed/cyclone/hammer/pv.c
@@ -395,9 +395,16 @@ static void pv_free(t_pv *x)
 static void *pv_new(t_symbol *s, int ac, t_atom *av)
 {
     t_pv *x = 0;
+    t_atom sane_default;
     if (ac && av->a_type == A_SYMBOL)
 	s = av->a_w.w_symbol;
-    else s = 0;
+    else
+    {
+        post("pv: warning: no symbol argument provided: defaulting to 'dummy'");
+        SETSYMBOL(&sane_default, gensym("dummy"));
+        ac = 1;
+        av = &sane_default;
+    }
     if (s && s != &s_)
     {
 	t_glist *gl = canvas_getcurrent();
diff --git a/externals/miXed/cyclone/sickle/Clip.c b/externals/miXed/cyclone/sickle/Clip.c
index d38ff4412..7b7074801 100644
--- a/externals/miXed/cyclone/sickle/Clip.c
+++ b/externals/miXed/cyclone/sickle/Clip.c
@@ -55,7 +55,6 @@ void Clip_tilde_setup(void)
     clip_class = class_new(gensym("Clip~"),
 			   (t_newmethod)clip_new, 0,
 			   sizeof(t_clip), 0, A_GIMME, 0);
-    class_addcreator((t_newmethod)clip_new, gensym("clip~"), A_GIMME, 0);
     class_addcreator((t_newmethod)clip_new, gensym("cyclone/clip~"), A_GIMME, 0);
     sic_setup(clip_class, clip_dsp, SIC_FLOATTOSIGNAL);
 }
diff --git a/externals/miXed/cyclone/sickle/Line.c b/externals/miXed/cyclone/sickle/Line.c
index 2ef31c053..78d446bca 100644
--- a/externals/miXed/cyclone/sickle/Line.c
+++ b/externals/miXed/cyclone/sickle/Line.c
@@ -323,7 +323,6 @@ void Line_tilde_setup(void)
 			   (t_newmethod)line_new,
 			   (t_method)line_free,
 			   sizeof(t_line), 0, A_DEFFLOAT, 0);
-    class_addcreator((t_newmethod)line_new, gensym("line~"), A_DEFFLOAT, 0);
     class_addcreator((t_newmethod)line_new, gensym("cyclone/line~"), A_DEFFLOAT, 0);
     sic_setup(line_class, line_dsp, SIC_NOMAINSIGNALIN);
     class_addfloat(line_class, line_float);
diff --git a/externals/miXed/cyclone/sickle/Snapshot.c b/externals/miXed/cyclone/sickle/Snapshot.c
index 13ef0ce8c..4ffd4c625 100644
--- a/externals/miXed/cyclone/sickle/Snapshot.c
+++ b/externals/miXed/cyclone/sickle/Snapshot.c
@@ -148,7 +148,6 @@ void Snapshot_tilde_setup(void)
 			       (t_method)snapshot_free,
 			       sizeof(t_snapshot), 0,
 			       A_DEFFLOAT, A_DEFFLOAT, 0);
-    class_addcreator((t_newmethod)snapshot_new, gensym("snapshot~"), A_DEFFLOAT, A_DEFFLOAT, 0);
     class_addcreator((t_newmethod)snapshot_new, gensym("cyclone/snapshot~"), A_DEFFLOAT, A_DEFFLOAT, 0);
     sic_setup(snapshot_class, snapshot_dsp, snapshot_float);
     class_addbang(snapshot_class, snapshot_bang);
diff --git a/externals/miXed/cyclone/sickle/matrix.c b/externals/miXed/cyclone/sickle/matrix.c
index a1c1ef460..8dcea78f1 100644
--- a/externals/miXed/cyclone/sickle/matrix.c
+++ b/externals/miXed/cyclone/sickle/matrix.c
@@ -482,79 +482,89 @@ static void matrix_free(t_matrix *x)
 static void *matrix_new(t_symbol *s, int ac, t_atom *av)
 {
     t_pd *z;
+    t_atom sane_defaults[3];
     if (!fittermax_get() &&
 	(z = fragile_class_mutate(matrixps_matrixtilde,
 				  (t_newmethod)matrix_new, ac, av)))
+{
 	return (z);
+}
+    if (!ac) // sane defaults if no arguments given
+    {
+        post("matrix~: warning: no arguments supplied: picking sane "
+             "defaults [matrix~ 1 1 0]");
+        SETFLOAT(sane_defaults, 1.);
+        SETFLOAT(sane_defaults, 1.);
+        SETFLOAT(sane_defaults, 0.);
+        ac = 3;
+        av = sane_defaults;
+    }
     else if (ac < 2)
     {
-	loud_error(0, "bad creation arguments for class '%s'",
-		   matrixps_matrixtilde->s_name);
-	loud_errand(0, "missing number of %s", (ac ? "outlets" : "inlets"));
-	return (0);  /* CHECKED */
+        loud_error(0, "bad creation arguments for class '%s'",
+            matrixps_matrixtilde->s_name);
+        loud_errand(0, "missing number of %s", (ac ? "outlets" : "inlets"));
+        return (0);  /* CHECKED */
+    }
+    t_matrix *x = (t_matrix *)pd_new(matrix_class);
+    int i;
+    if (av[0].a_type == A_FLOAT)
+    {
+        if ((x->x_ninlets = (int)av[0].a_w.w_float) < 1)
+        x->x_ninlets = 1;
+    }
+    else x->x_ninlets = 1;  /* CHECKED */
+    if (av[1].a_type == A_FLOAT)
+    {
+        if ((x->x_noutlets = (int)av[1].a_w.w_float) < 1)
+        x->x_noutlets = 1;
+    }
+    else x->x_noutlets = 1;  /* CHECKED */
+    x->x_ncells = x->x_ninlets * x->x_noutlets;
+    x->x_ivecs = getbytes(x->x_ninlets * sizeof(*x->x_ivecs));
+    x->x_ovecs = getbytes(x->x_noutlets * sizeof(*x->x_ovecs));
+    x->x_nblock = x->x_maxblock = sys_getblksize();
+    x->x_osums = getbytes(x->x_noutlets * sizeof(*x->x_osums));
+    for (i = 0; i < x->x_noutlets; i++)
+        x->x_osums[i] = getbytes(x->x_maxblock * sizeof(*x->x_osums[i]));
+    x->x_cells = getbytes(x->x_ncells * sizeof(*x->x_cells));
+    matrix_clear(x);
+    if (ac >= 3)
+    {
+        if (av[2].a_type == A_FLOAT)
+            x->x_defgain = av[2].a_w.w_float;
+        else
+            x->x_defgain = MATRIX_DEFGAIN;
+        x->x_gains = getbytes(x->x_ncells * sizeof(*x->x_gains));
+        for (i = 0; i < x->x_ncells; i++)
+            x->x_gains[i] = x->x_defgain;
+        x->x_ramps = getbytes(x->x_ncells * sizeof(*x->x_ramps));
+        matrix_ramp(x, MATRIX_DEFRAMP);
+        x->x_coefs = getbytes(x->x_ncells * sizeof(*x->x_coefs));
+        for (i = 0; i < x->x_ncells; i++)
+            x->x_coefs[i] = 0.;
+        x->x_ksr = sys_getsr() * .001;
+        x->x_incrs = getbytes(x->x_ncells * sizeof(*x->x_incrs));
+        x->x_bigincrs = getbytes(x->x_ncells * sizeof(*x->x_bigincrs));
+        x->x_remains = getbytes(x->x_ncells * sizeof(*x->x_remains));
+        for (i = 0; i < x->x_ncells; i++)
+        x->x_remains[i] = 0;
     }
     else
     {
-	t_matrix *x = (t_matrix *)pd_new(matrix_class);
-	int i;
-	if (av[0].a_type == A_FLOAT)
-	{
-	    if ((x->x_ninlets = (int)av[0].a_w.w_float) < 1)
-		x->x_ninlets = 1;
-	}
-	else x->x_ninlets = 1;  /* CHECKED */
-	if (av[1].a_type == A_FLOAT)
-	{
-	    if ((x->x_noutlets = (int)av[1].a_w.w_float) < 1)
-		x->x_noutlets = 1;
-	}
-	else x->x_noutlets = 1;  /* CHECKED */
-	x->x_ncells = x->x_ninlets * x->x_noutlets;
-	x->x_ivecs = getbytes(x->x_ninlets * sizeof(*x->x_ivecs));
-	x->x_ovecs = getbytes(x->x_noutlets * sizeof(*x->x_ovecs));
-	x->x_nblock = x->x_maxblock = sys_getblksize();
-	x->x_osums = getbytes(x->x_noutlets * sizeof(*x->x_osums));
-	for (i = 0; i < x->x_noutlets; i++)
-	    x->x_osums[i] = getbytes(x->x_maxblock * sizeof(*x->x_osums[i]));
-	x->x_cells = getbytes(x->x_ncells * sizeof(*x->x_cells));
-	matrix_clear(x);
-	if (ac >= 3)
-	{
-	    if (av[2].a_type == A_FLOAT)
-		x->x_defgain = av[2].a_w.w_float;
-	    else
-		x->x_defgain = MATRIX_DEFGAIN;
-	    x->x_gains = getbytes(x->x_ncells * sizeof(*x->x_gains));
-	    for (i = 0; i < x->x_ncells; i++)
-		x->x_gains[i] = x->x_defgain;
-	    x->x_ramps = getbytes(x->x_ncells * sizeof(*x->x_ramps));
-	    matrix_ramp(x, MATRIX_DEFRAMP);
-	    x->x_coefs = getbytes(x->x_ncells * sizeof(*x->x_coefs));
-	    for (i = 0; i < x->x_ncells; i++)
-		x->x_coefs[i] = 0.;
-	    x->x_ksr = sys_getsr() * .001;
-	    x->x_incrs = getbytes(x->x_ncells * sizeof(*x->x_incrs));
-	    x->x_bigincrs = getbytes(x->x_ncells * sizeof(*x->x_bigincrs));
-	    x->x_remains = getbytes(x->x_ncells * sizeof(*x->x_remains));
-	    for (i = 0; i < x->x_ncells; i++)
-		x->x_remains[i] = 0;
-	}
-	else
-	{
-	    x->x_gains = 0;
-	    x->x_ramps = 0;
-	    x->x_coefs = 0;
-	    x->x_incrs = 0;
-	    x->x_bigincrs = 0;
-	    x->x_remains = 0;
-	}
-	for (i = 1; i < x->x_ninlets; i++)
-	    sic_newinlet((t_sic *)x, 0.);
-	for (i = 0; i < x->x_noutlets; i++)
-	    outlet_new((t_object *)x, &s_signal);
-	x->x_dumpout = outlet_new((t_object *)x, &s_list);
-	return (x);
+        x->x_gains = 0;
+        x->x_ramps = 0;
+        x->x_coefs = 0;
+        x->x_incrs = 0;
+        x->x_bigincrs = 0;
+        x->x_remains = 0;
     }
+    for (i = 1; i < x->x_ninlets; i++)
+        sic_newinlet((t_sic *)x, 0.);
+    for (i = 0; i < x->x_noutlets; i++)
+        outlet_new((t_object *)x, &s_signal);
+    x->x_dumpout = outlet_new((t_object *)x, &s_list);
+    return (x);
 }
 
 void matrix_tilde_setup(void)
-- 
GitLab


From 7e3c3f7da719bf314b814d5ff40a6873cce3334c Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Mon, 24 Jul 2017 21:01:42 -0400
Subject: [PATCH 12/98] remove unnecessary pd files from fluid~

---
 externals/fluid~/ezdac~.pd |  32 ----------
 externals/fluid~/fluid.pd  | 123 -------------------------------------
 2 files changed, 155 deletions(-)
 delete mode 100644 externals/fluid~/ezdac~.pd
 delete mode 100644 externals/fluid~/fluid.pd

diff --git a/externals/fluid~/ezdac~.pd b/externals/fluid~/ezdac~.pd
deleted file mode 100644
index 22f4cd536..000000000
--- a/externals/fluid~/ezdac~.pd
+++ /dev/null
@@ -1,32 +0,0 @@
-#N canvas 304 280 450 300 10;
-#X obj 224 205 dac~;
-#X obj 224 32 inlet~;
-#X obj 259 60 inlet~;
-#X obj 318 69 tgl 16 0 \$0-d \$0-d DSP 0 -6 1728 8 -260818 -123526
--33289 0 1;
-#X msg 318 93 \; pd dsp \$1;
-#X obj 69 186 hsl 64 16 0 1 0 0 \$0-v \$0-v volume -2 -6 1728 8 -260818
--123526 -1 0 1;
-#X obj 269 108 r \$0-v;
-#X obj 262 206 outlet~;
-#X obj 166 206 outlet~;
-#X obj 357 28 r pd;
-#X obj 357 52 route dsp;
-#X obj 269 155 line~;
-#X msg 269 132 \$1 10;
-#X obj 259 180 *~;
-#X obj 224 180 *~;
-#X connect 1 0 14 0;
-#X connect 2 0 13 0;
-#X connect 3 0 4 0;
-#X connect 6 0 12 0;
-#X connect 9 0 10 0;
-#X connect 10 0 3 0;
-#X connect 11 0 13 1;
-#X connect 11 0 14 1;
-#X connect 12 0 11 0;
-#X connect 13 0 0 1;
-#X connect 13 0 7 0;
-#X connect 14 0 0 0;
-#X connect 14 0 8 0;
-#X coords 0 0 1 1 90 55 1;
diff --git a/externals/fluid~/fluid.pd b/externals/fluid~/fluid.pd
deleted file mode 100644
index 53f7fbe5a..000000000
--- a/externals/fluid~/fluid.pd
+++ /dev/null
@@ -1,123 +0,0 @@
-#N canvas 243 11 1015 761 10;
-#X text 35 71 A soundfont player using If I Were You \, from www.iiwu.org
-;
-#X text 173 286 fluid~ wants channel # first: should I change this?
-;
-#X text 263 595 Program change ("prog" or "p" + chan + value);
-#X text 173 254 Note messages start with "note" \, "n" or with nothing
-(pure list input): chan + note + velocity;
-#X obj 36 34 cnv 15 102 32 empty empty empty 20 12 1 14 -1 -66577 0
-;
-#X obj 37 35 cnv 15 100 30 empty empty fluid~ 20 15 1 14 -257472 -66577
-0;
-#X obj 593 55 cnv 15 374 160 empty empty empty 20 12 1 14 -1 -66577
-0;
-#X text 181 120 "load" soundfonts. Creation argument is possible as
-well:;
-#X obj 594 56 cnv 15 372 158 empty Notes Soundfonts 20 12 65 14 -228992
--66577 0;
-#X msg 650 146 load /usr/lib/awe/sfbank/2gmgsmt.sf2;
-#X msg 644 126 load \$1;
-#X obj 644 104 openpanel;
-#X obj 644 84 bng 15 250 50 0 empty empty empty 0 -6 0 8 -260818 -1
--1;
-#X obj 629 171 s \$0-iiwu;
-#X obj 375 146 fluid~ notavail.sf2;
-#X obj 593 219 cnv 15 374 160 empty empty empty 20 12 1 14 -1 -66577
-0;
-#X obj 594 220 cnv 15 372 158 empty Notes Notes 20 12 65 14 -228992
--66577 0;
-#X obj 837 261 notein;
-#X obj 837 283 pack 0 0 0;
-#X msg 695 325 n 1 60 0;
-#X obj 640 348 s \$0-iiwu;
-#X obj 695 281 bang;
-#X msg 837 305 \$3 \$1 \$2;
-#X obj 837 327 s \$0-iiwu;
-#X obj 593 382 cnv 15 374 160 empty empty empty 20 12 1 14 -1 -66577
-0;
-#X text 159 432 Controller Change: "control" or "c" or "cc" + chan
-+ cc# + value;
-#X obj 594 383 cnv 15 372 158 empty Notes Controller_Change/Pitch_Bend
-20 12 65 14 -228992 -66577 0;
-#X obj 632 510 s \$0-iiwu;
-#X floatatom 632 425 5 0 0 0 - - -;
-#X msg 649 478 c 2 \$1;
-#X msg 632 444 control 1 2 \$1;
-#X obj 593 546 cnv 15 374 160 empty empty empty 20 12 1 14 -1 -66577
-0;
-#X obj 594 547 cnv 15 372 158 empty Notes Program_Change 20 12 65 14
--228992 -66577 0;
-#X obj 703 664 s \$0-iiwu;
-#X msg 703 617 prog 1 \$1;
-#X msg 783 617 p 2 \$1;
-#X floatatom 703 587 5 0 0 0 - - -;
-#X obj 695 239 bng 15 250 50 0 empty empty empty 0 -6 0 8 -24198 -1
--1;
-#X floatatom 783 587 5 0 0 0 - - -;
-#X floatatom 673 425 5 0 0 0 - - -;
-#X msg 695 259 note 1 60 120;
-#X obj 741 425 ctlin;
-#X msg 741 469 cc \$3 \$2 \$1;
-#X obj 741 447 pack 0 0 0;
-#X obj 856 433 bendin;
-#X obj 856 455 pack 0 0;
-#X obj 856 499 s \$0-iiwu;
-#X msg 856 477 bend \$2 \$1;
-#X text 159 464 Pitch Bend works the same: "bend" or "b" + chan + val
-;
-#X msg 857 611 bank 1 \$1;
-#X floatatom 857 592 5 0 0 0 - - -;
-#X text 857 632 bank select;
-#X obj 789 224 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0
-1;
-#X obj 715 224 metro 1000;
-#X obj 695 303 del 500;
-#X obj 40 261 cnv 15 102 32 empty empty empty 20 12 1 14 -1 -66577
-0;
-#X obj 41 262 cnv 15 100 30 empty empty empty 20 15 1 14 -257472 -66577
-0;
-#X obj 66 269 fluid~;
-#X obj 43 342 ezdac~;
-#X obj 66 199 r \$0-iiwu;
-#X msg 66 233 help;
-#X connect 9 0 13 0;
-#X connect 10 0 13 0;
-#X connect 11 0 10 0;
-#X connect 12 0 11 0;
-#X connect 17 0 18 0;
-#X connect 17 1 18 1;
-#X connect 17 2 18 2;
-#X connect 18 0 22 0;
-#X connect 19 0 20 0;
-#X connect 21 0 54 0;
-#X connect 22 0 23 0;
-#X connect 28 0 30 0;
-#X connect 29 0 27 0;
-#X connect 30 0 27 0;
-#X connect 34 0 33 0;
-#X connect 35 0 33 0;
-#X connect 36 0 34 0;
-#X connect 37 0 40 0;
-#X connect 38 0 35 0;
-#X connect 39 0 29 0;
-#X connect 40 0 20 0;
-#X connect 40 0 21 0;
-#X connect 41 0 43 0;
-#X connect 41 1 43 1;
-#X connect 41 2 43 2;
-#X connect 42 0 27 0;
-#X connect 43 0 42 0;
-#X connect 44 0 45 0;
-#X connect 44 1 45 1;
-#X connect 45 0 47 0;
-#X connect 47 0 46 0;
-#X connect 49 0 33 0;
-#X connect 50 0 49 0;
-#X connect 52 0 53 0;
-#X connect 53 0 37 0;
-#X connect 54 0 19 0;
-#X connect 57 0 58 0;
-#X connect 57 1 58 1;
-#X connect 59 0 57 0;
-#X connect 60 0 57 0;
-- 
GitLab


From d47295f590ebe53606153dd2cba4687971c92950 Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Mon, 24 Jul 2017 21:09:24 -0400
Subject: [PATCH 13/98] remove duplicated abstraction from non-default library

---
 externals/hid/buttongate-help.pd | 53 --------------------------------
 externals/hid/buttongate.pd      | 42 -------------------------
 2 files changed, 95 deletions(-)
 delete mode 100644 externals/hid/buttongate-help.pd
 delete mode 100644 externals/hid/buttongate.pd

diff --git a/externals/hid/buttongate-help.pd b/externals/hid/buttongate-help.pd
deleted file mode 100644
index 6b5dc723f..000000000
--- a/externals/hid/buttongate-help.pd
+++ /dev/null
@@ -1,53 +0,0 @@
-#N canvas 0 31 463 514 10;
-#X obj 5 2 cnv 15 450 20 empty empty buttongate 2 11 1 18 -233017 -66577
-0;
-#X obj 160 287 bng 25 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
--1;
-#X obj 160 151 loadbang;
-#X msg 160 171 1;
-#X obj 160 199 metro 150;
-#X text 27 470 (C) Copyright 2004 Hans-Christoph Steiner <hans@eds.org>
-;
-#X text 244 484 released under the GNU GPL;
-#X obj 223 417 pddp/pddplink ../all_about_hid.pd -text all_about_hid
-;
-#X text 114 418 For more info:;
-#X text 17 38 [buttongate] is a simple gate controlled by a HID button.
-You must specify the device and the button which controls the gate.
-The left inlet takes the data to be gated. The right inlet is for sending
-optional control messages to the HID.;
-#X obj 160 244 buttongate 0 btn_0;
-#X text 18 119 The first button on the first device controls this gate:
-;
-#X text 15 237 data to be gated -->;
-#X text 292 237 <-- msgs to [hid];
-#X obj 281 288 bng 25 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
--1;
-#X msg 310 197 refresh;
-#X msg 299 176 open 2;
-#X text 39 294 button pressed->;
-#X text 310 293 <-- button released;
-#X text 23 348 Keyboard keys can also be used to control this object.
-You can get the [hid] keycode from here:;
-#X obj 324 368 ev_key-list;
-#X obj 422 3 pddp/pddplink http://puredata.info/dev/pddp -text pddp
-;
-#N canvas 504 253 494 344 META 0;
-#X text 12 165 HELP_PATCH_AUTHORS "pd meta" information added by Jonathan
-Wilkes for Pd version 0.42.;
-#X text 12 25 LICENSE GPL;
-#X text 12 145 AUTHOR Hans-Christoph Steiner;
-#X text 12 45 DESCRIPTION simple gate controlled by a HID button;
-#X text 12 65 INLET_0 bang;
-#X text 12 85 INLET_1 open refresh;
-#X text 12 105 OUTLET_0 bang;
-#X text 12 125 OUTLET_1 bang;
-#X text 12 5 KEYWORDS control user_input abstraction;
-#X restore 406 463 pd META;
-#X connect 2 0 3 0;
-#X connect 3 0 4 0;
-#X connect 4 0 10 0;
-#X connect 10 0 1 0;
-#X connect 10 1 14 0;
-#X connect 15 0 10 1;
-#X connect 16 0 10 1;
diff --git a/externals/hid/buttongate.pd b/externals/hid/buttongate.pd
deleted file mode 100644
index d80feb62a..000000000
--- a/externals/hid/buttongate.pd
+++ /dev/null
@@ -1,42 +0,0 @@
-#N canvas 367 43 525 408 10;
-#X obj 303 81 hid \$1;
-#X obj 303 24 inlet;
-#X obj 303 106 route key;
-#X obj 303 127 route \$2;
-#X obj 104 26 inlet;
-#X obj 104 295 outlet;
-#X obj 104 264 spigot;
-#X text 10 324 (C) Copyright 2004 Hans-Christoph Steiner <hans@eds.org>
-;
-#X text 226 340 released under the GNU GPL;
-#X text 16 371 $Author: eighthave $;
-#X text 16 388 $Date: 2004-11-25 02:42:49 $;
-#X text 16 354 $Revision: 1.2 $;
-#X obj 192 16 loadbang;
-#X obj 303 147 unpack f f;
-#X text 5 6 [buttongate];
-#X obj 242 263 spigot;
-#X obj 242 295 outlet;
-#X obj 333 195 - 1;
-#X obj 333 215 abs;
-#X msg 192 50 0;
-#X msg 243 50 1;
-#X obj 303 168 t f f;
-#X connect 0 0 2 0;
-#X connect 1 0 0 0;
-#X connect 2 0 3 0;
-#X connect 3 0 13 0;
-#X connect 4 0 6 0;
-#X connect 4 0 15 0;
-#X connect 6 0 5 0;
-#X connect 12 0 19 0;
-#X connect 12 0 20 0;
-#X connect 13 0 21 0;
-#X connect 15 0 16 0;
-#X connect 17 0 18 0;
-#X connect 18 0 15 1;
-#X connect 19 0 6 1;
-#X connect 20 0 15 1;
-#X connect 20 0 0 0;
-#X connect 21 0 6 1;
-#X connect 21 1 17 0;
-- 
GitLab


From f94ff9eb6c1d80d4f244706672921a77a94d96ef Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Mon, 24 Jul 2017 21:29:23 -0400
Subject: [PATCH 14/98] use [output~] in fluid~ library, remove some aliased
 abstractions

---
 externals/fluid~/fluid~-help.pd | 60 ++++++++++++++++-----------------
 externals/hid/keygate-help.pd   | 46 -------------------------
 externals/hid/keygate.pd        | 43 -----------------------
 externals/hid/notescale-help.pd | 56 ------------------------------
 externals/hid/notescale.pd      | 29 ----------------
 5 files changed, 30 insertions(+), 204 deletions(-)
 delete mode 100644 externals/hid/keygate-help.pd
 delete mode 100644 externals/hid/keygate.pd
 delete mode 100644 externals/hid/notescale-help.pd
 delete mode 100644 externals/hid/notescale.pd

diff --git a/externals/fluid~/fluid~-help.pd b/externals/fluid~/fluid~-help.pd
index fdee7316e..1587a7628 100644
--- a/externals/fluid~/fluid~-help.pd
+++ b/externals/fluid~/fluid~-help.pd
@@ -1,4 +1,4 @@
-#N canvas 79 6 1015 761 10;
+#N canvas 8 25 1015 671 10;
 #X text 35 71 A soundfont player using If I Were You \, from www.iiwu.org
 ;
 #X text 170 296 fluid~ wants channel # first: should I change this?
@@ -41,7 +41,7 @@
 #X obj 594 346 cnv 15 372 158 empty Notes Controller_Change/Pitch_Bend
 20 12 1 14 -228992 -66577 0;
 #X obj 632 473 s \$0-iiwu;
-#X floatatom 632 388 5 0 0 0 - - -;
+#X floatatom 632 388 5 0 0 0 - - -, f 5;
 #X msg 649 441 c 2 \$1;
 #X msg 632 407 control 1 2 \$1;
 #X obj 593 509 cnv 15 374 160 empty empty empty 20 12 1 14 -1 -66577
@@ -51,11 +51,11 @@
 #X obj 703 627 s \$0-iiwu;
 #X msg 703 580 prog 1 \$1;
 #X msg 783 580 p 2 \$1;
-#X floatatom 703 550 5 0 0 0 - - -;
+#X floatatom 703 550 5 0 0 0 - - -, f 5;
 #X obj 695 202 bng 15 250 50 0 empty empty empty 0 -6 0 8 -24198 -1
 -1;
-#X floatatom 783 550 5 0 0 0 - - -;
-#X floatatom 673 388 5 0 0 0 - - -;
+#X floatatom 783 550 5 0 0 0 - - -, f 5;
+#X floatatom 673 388 5 0 0 0 - - -, f 5;
 #X msg 695 222 note 1 60 120;
 #X obj 741 388 ctlin;
 #X obj 741 410 pack 0 0 0;
@@ -65,7 +65,7 @@
 #X msg 856 440 bend \$2 \$1;
 #X text 159 445 Pitch Bend works the same: bend or b + chan + val;
 #X msg 857 574 bank 1 \$1;
-#X floatatom 857 555 5 0 0 0 - - -;
+#X floatatom 857 555 5 0 0 0 - - -, f 5;
 #X text 857 595 bank select;
 #X obj 789 187 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0
 1;
@@ -74,7 +74,6 @@
 0;
 #X obj 41 262 cnv 15 100 30 empty empty empty 20 15 1 14 -257472 -66577
 0;
-#X obj 43 342 ezdac~;
 #X obj 66 199 r \$0-iiwu;
 #X msg 66 233 help;
 #X msg 146 217 init /usr/lib/awe/sfbank/2gmgsmt.sf2;
@@ -88,25 +87,25 @@ to adapt to new samplerates.;
 -66577 0;
 #X msg 231 682 gen 1 \$2 \$1;
 #X obj 231 704 s \$0-iiwu;
-#X floatatom 289 642 5 0 60 0 - - -;
-#X floatatom 231 642 5 0 0 0 - - -;
+#X floatatom 289 642 5 0 60 0 - - -, f 5;
+#X floatatom 231 642 5 0 0 0 - - -, f 5;
 #X obj 231 662 pack 0 17;
 #X text 78 607 gen 17 is "pan".;
 #X text 78 594 Setting generators like for example:;
 #X obj 695 266 del 1000;
-#X symbolatom 343 684 20 0 0 0 - - -;
+#X symbolatom 343 684 20 0 0 0 - - -, f 20;
 #X obj 343 656 fluid.gen2sym;
 #X text 345 700 a little helper;
 #N canvas 402 274 605 444 dust 0;
 #X obj 119 135 del 10;
 #X obj 119 41 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1
 ;
-#X floatatom 386 66 5 0 0 1 dustiness - -;
-#X floatatom 386 164 5 0 0 1 note_range - -;
-#X floatatom 387 198 5 0 0 1 note_center - -;
+#X floatatom 386 66 5 0 0 1 dustiness - -, f 5;
+#X floatatom 386 164 5 0 0 1 note_range - -, f 5;
+#X floatatom 387 198 5 0 0 1 note_center - -, f 5;
 #X obj 237 417 s \$0-iiwu;
 #X obj 387 242 / 2;
-#X floatatom 387 223 5 0 0 1 pan_mod - -;
+#X floatatom 387 223 5 0 0 1 pan_mod - -, f 5;
 #X msg 237 281 gen 1 17 \$1;
 #X obj 237 237 random 100;
 #X obj 237 259 - 50;
@@ -150,6 +149,7 @@ to adapt to new samplerates.;
 #X restore 709 715 pd dust;
 #X text 601 716 A composition:;
 #X msg 705 87 load /home/ico/Downloads/Soundfonts/jRhodes3.sf2;
+#X obj 66 320 output~;
 #X connect 9 0 13 0;
 #X connect 10 0 13 0;
 #X connect 11 0 10 0;
@@ -159,7 +159,7 @@ to adapt to new samplerates.;
 #X connect 17 2 18 2;
 #X connect 18 0 22 0;
 #X connect 19 0 20 0;
-#X connect 21 0 71 0;
+#X connect 21 0 70 0;
 #X connect 22 0 23 0;
 #X connect 28 0 30 0;
 #X connect 29 0 27 0;
@@ -175,7 +175,7 @@ to adapt to new samplerates.;
 #X connect 41 0 42 0;
 #X connect 41 1 42 1;
 #X connect 41 2 42 2;
-#X connect 42 0 61 0;
+#X connect 42 0 60 0;
 #X connect 43 0 44 0;
 #X connect 43 1 44 1;
 #X connect 44 0 46 0;
@@ -184,17 +184,17 @@ to adapt to new samplerates.;
 #X connect 49 0 48 0;
 #X connect 51 0 52 0;
 #X connect 52 0 37 0;
-#X connect 56 0 59 0;
-#X connect 57 0 59 0;
-#X connect 58 0 59 0;
-#X connect 59 0 55 0;
-#X connect 59 1 55 1;
-#X connect 61 0 27 0;
-#X connect 64 0 65 0;
-#X connect 66 0 68 1;
-#X connect 66 0 73 0;
-#X connect 67 0 68 0;
-#X connect 68 0 64 0;
-#X connect 71 0 19 0;
-#X connect 73 0 72 0;
-#X connect 77 0 13 0;
+#X connect 55 0 58 0;
+#X connect 56 0 58 0;
+#X connect 57 0 58 0;
+#X connect 58 0 77 0;
+#X connect 58 1 77 1;
+#X connect 60 0 27 0;
+#X connect 63 0 64 0;
+#X connect 65 0 67 1;
+#X connect 65 0 72 0;
+#X connect 66 0 67 0;
+#X connect 67 0 63 0;
+#X connect 70 0 19 0;
+#X connect 72 0 71 0;
+#X connect 76 0 13 0;
diff --git a/externals/hid/keygate-help.pd b/externals/hid/keygate-help.pd
deleted file mode 100644
index 5ed83d5a4..000000000
--- a/externals/hid/keygate-help.pd
+++ /dev/null
@@ -1,46 +0,0 @@
-#N canvas 0 31 462 494 10;
-#X obj 5 2 cnv 15 450 20 empty empty keygate 2 11 1 18 -233017 -66577
-0;
-#X obj 160 257 bng 25 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
--1;
-#X obj 160 121 loadbang;
-#X msg 160 141 1;
-#X obj 160 169 metro 150;
-#X text 33 416 (C) Copyright 2004 Hans-Christoph Steiner <hans@eds.org>
-;
-#X text 250 430 released under the GNU GPL;
-#X obj 237 369 pddp/pddplink ../all_about_hid.pd -text all_about_hid
-;
-#X text 128 370 For more info:;
-#X text 15 207 data to be gated -->;
-#X obj 281 258 bng 25 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
--1;
-#X obj 40 300 keyname;
-#X symbolatom 79 324 10 0 0 0 - - -;
-#X text 157 324 <-- check here for the keyname symbol;
-#X obj 160 214 keygate f;
-#X text 17 38 [keygate] is a simple gate controlled by a keyboard.
-You must specify the name of the key which controls the gate. The left
-inlet takes the data to be gated.;
-#X text 18 89 The "f" key on the any keyboard controls this gate:;
-#X text 310 263 <-- key released;
-#X text 41 264 key pressed -->;
-#X obj 422 3 pddp/pddplink http://puredata.info/dev/pddp -text pddp
-;
-#N canvas 472 31 494 344 META 0;
-#X text 12 145 HELP_PATCH_AUTHORS "pd meta" information added by Jonathan
-Wilkes for Pd version 0.42.;
-#X text 12 25 LICENSE GPL;
-#X text 12 125 AUTHOR Hans-Christoph Steiner;
-#X text 12 85 OUTLET_0 bang;
-#X text 12 105 OUTLET_1 bang;
-#X text 12 45 DESCRIPTION simple gate controlled by a keyboard;
-#X text 12 65 INLET_0 bang;
-#X text 12 5 KEYWORDS control user_input abstraction;
-#X restore 407 462 pd META;
-#X connect 2 0 3 0;
-#X connect 3 0 4 0;
-#X connect 4 0 14 0;
-#X connect 11 1 12 0;
-#X connect 14 0 1 0;
-#X connect 14 1 10 0;
diff --git a/externals/hid/keygate.pd b/externals/hid/keygate.pd
deleted file mode 100644
index ca66095dc..000000000
--- a/externals/hid/keygate.pd
+++ /dev/null
@@ -1,43 +0,0 @@
-#N canvas 326 22 530 481 10;
-#X obj 44 36 inlet;
-#X obj 44 365 outlet;
-#X obj 44 334 spigot;
-#X text 109 401 (C) Copyright 2004 Hans-Christoph Steiner <hans@eds.org>
-;
-#X text 326 415 released under the GNU GPL;
-#X text 16 444 $Author: eighthave $;
-#X text 16 461 $Date: 2004-11-25 02:42:49 $;
-#X text 16 427 $Revision: 1.1 $;
-#X obj 132 26 loadbang;
-#X text 5 6 [keygate];
-#X obj 182 333 spigot;
-#X obj 182 365 outlet;
-#X obj 273 204 - 1;
-#X obj 273 224 abs;
-#X obj 236 27 keyname;
-#X msg 132 60 0;
-#X msg 183 60 1;
-#X obj 243 181 t f f;
-#X obj 243 157 f;
-#X obj 243 107 sel \$1;
-#X obj 243 86 symbol;
-#X obj 236 57 trigger bang float;
-#X connect 0 0 2 0;
-#X connect 0 0 10 0;
-#X connect 2 0 1 0;
-#X connect 8 0 15 0;
-#X connect 8 0 16 0;
-#X connect 10 0 11 0;
-#X connect 12 0 13 0;
-#X connect 13 0 10 1;
-#X connect 14 0 21 0;
-#X connect 14 1 20 1;
-#X connect 15 0 2 1;
-#X connect 16 0 10 1;
-#X connect 17 0 2 1;
-#X connect 17 1 12 0;
-#X connect 18 0 17 0;
-#X connect 19 0 18 0;
-#X connect 20 0 19 0;
-#X connect 21 0 20 0;
-#X connect 21 1 18 1;
diff --git a/externals/hid/notescale-help.pd b/externals/hid/notescale-help.pd
deleted file mode 100644
index 3d4d4179e..000000000
--- a/externals/hid/notescale-help.pd
+++ /dev/null
@@ -1,56 +0,0 @@
-#N canvas 0 31 464 467 10;
-#X floatatom 26 85 5 0 0 0 - - -;
-#X floatatom 26 160 0 0 0 0 - - -;
-#X obj 2 2 cnv 15 450 20 empty empty notescale 2 11 1 18 -233017 -66577
-0;
-#X obj 418 3 pddp/pddplink http://puredata.info/dev/pddp -text pddp
-;
-#X floatatom 137 266 5 0 0 0 - - -;
-#X obj 140 330 hsl 128 15 0 127 0 0 empty empty empty -2 -6 0 8 -262144
--1 -1 0 1;
-#X text 17 393 (C) Copyright 2004 Hans-Christoph Steiner <hans@eds.org>
-;
-#X text 234 407 released under the GNU GPL;
-#X floatatom 150 160 0 0 0 0 - - -;
-#X floatatom 297 160 0 0 0 0 - - -;
-#X obj 213 83 hsl 128 15 0 1 0 0 empty empty empty -2 -6 0 8 -225271
--1 -1 0 0;
-#X text 17 426 $Revision: 1.3 $$Date: 2006-03-17 04:58:30 $;
-#X text 18 439 $Author: eighthave $;
-#X obj 140 244 hsl 128 15 0 1 0 0 empty empty empty -2 -6 0 8 -262131
--1 -1 0 0;
-#X obj 26 130 notescale 30 60;
-#X floatatom 137 347 5 0 0 0 - - -;
-#X text 13 193 If you use [notescale] with no arguments \, then the
-output range defaults to 0-127.;
-#X floatatom 202 109 5 0 0 0 - - -;
-#X obj 26 105 / 100;
-#X text 18 35 [notescale] scales a stream of numbers to a MIDI note
-number. It takes an input range of 0 to 1 \, and outputs MIDI note
-numbers based on an output range set as arguments.;
-#X obj 137 297 notescale;
-#X obj 150 130 notescale 15 120;
-#X obj 297 130 notescale 24 48;
-#N canvas 474 31 494 344 META 0;
-#X text 12 125 HELP_PATCH_AUTHORS "pd meta" information added by Jonathan
-Wilkes for Pd version 0.42.;
-#X text 12 25 LICENSE GPL;
-#X text 12 105 AUTHOR Hans-Christoph Steiner;
-#X text 12 45 DESCRIPTION scale a stream of numbers to a MIDI note
-number;
-#X text 12 65 INLET_0 float;
-#X text 12 85 OUTLET_0 float;
-#X text 12 5 KEYWORDS control abstraction;
-#X restore 406 435 pd META;
-#X connect 0 0 18 0;
-#X connect 4 0 20 0;
-#X connect 5 0 15 0;
-#X connect 10 0 17 0;
-#X connect 10 0 21 0;
-#X connect 10 0 22 0;
-#X connect 13 0 4 0;
-#X connect 14 0 1 0;
-#X connect 18 0 14 0;
-#X connect 20 0 5 0;
-#X connect 21 0 8 0;
-#X connect 22 0 9 0;
diff --git a/externals/hid/notescale.pd b/externals/hid/notescale.pd
deleted file mode 100644
index 8c6336904..000000000
--- a/externals/hid/notescale.pd
+++ /dev/null
@@ -1,29 +0,0 @@
-#N canvas 37 318 444 446 10;
-#X obj 64 49 inlet;
-#X obj 64 389 outlet;
-#X obj 64 325 int;
-#X obj 64 297 expr $f1 * ($f3 - $f2) + $f2;
-#X obj 357 231 f \$2;
-#X obj 159 230 f \$1;
-#X obj 159 257 expr if ($f1 == $f2 \, 0 \, $f1) \; if ($f1 == $f2 \,
-127 \, $f2);
-#X text 10 7 [notescale];
-#X obj 229 152 loadbang;
-#X obj 229 179 t b b;
-#X text 114 49 input range: 0 to 1;
-#X obj 64 96 min 1;
-#X obj 64 116 max 0;
-#X text 123 389 output range: MIDI note #s;
-#X connect 0 0 11 0;
-#X connect 2 0 1 0;
-#X connect 3 0 2 0;
-#X connect 4 0 6 1;
-#X connect 5 0 6 0;
-#X connect 6 0 3 1;
-#X connect 6 1 3 2;
-#X connect 8 0 9 0;
-#X connect 9 0 5 0;
-#X connect 9 1 4 0;
-#X connect 11 0 12 0;
-#X connect 12 0 3 0;
-#X connect 12 0 9 0;
-- 
GitLab


From d6d32a03c6f5bfb70b28586270fd6ffe07cd70c7 Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Mon, 24 Jul 2017 22:06:39 -0400
Subject: [PATCH 15/98] remove a bunch of state files that somehow got added to
 the repo at the outset

---
 externals/iem16/src/del16read~.d.10336    |  0
 externals/iem16/src/del16read~.d.10476    |  0
 externals/iem16/src/del16read~.d.10825    |  0
 externals/iem16/src/del16read~.d.11250    |  0
 externals/iem16/src/del16read~.d.11275    |  0
 externals/iem16/src/del16read~.d.11617    |  0
 externals/iem16/src/del16read~.d.11964    |  0
 externals/iem16/src/del16read~.d.12056    |  0
 externals/iem16/src/del16read~.d.12196    |  0
 externals/iem16/src/del16read~.d.12474    |  0
 externals/iem16/src/del16read~.d.12683    |  0
 externals/iem16/src/del16read~.d.12698    |  0
 externals/iem16/src/del16read~.d.12837    |  0
 externals/iem16/src/del16read~.d.13107    |  0
 externals/iem16/src/del16read~.d.13163    |  0
 externals/iem16/src/del16read~.d.13198    |  0
 externals/iem16/src/del16read~.d.13719    |  0
 externals/iem16/src/del16read~.d.1390     |  0
 externals/iem16/src/del16read~.d.13987    |  0
 externals/iem16/src/del16read~.d.14204    |  0
 externals/iem16/src/del16read~.d.14409    |  0
 externals/iem16/src/del16read~.d.14609    |  0
 externals/iem16/src/del16read~.d.14761    |  0
 externals/iem16/src/del16read~.d.14783    |  0
 externals/iem16/src/del16read~.d.14864    |  0
 externals/iem16/src/del16read~.d.15294    |  0
 externals/iem16/src/del16read~.d.15446    |  0
 externals/iem16/src/del16read~.d.15481    |  0
 externals/iem16/src/del16read~.d.15512    |  0
 externals/iem16/src/del16read~.d.15610    |  0
 externals/iem16/src/del16read~.d.1576     |  0
 externals/iem16/src/del16read~.d.15771    |  0
 externals/iem16/src/del16read~.d.1609     |  0
 externals/iem16/src/del16read~.d.16844    |  0
 externals/iem16/src/del16read~.d.16916    |  0
 externals/iem16/src/del16read~.d.17580    |  0
 externals/iem16/src/del16read~.d.17616    |  0
 externals/iem16/src/del16read~.d.17618    |  0
 externals/iem16/src/del16read~.d.17666    |  0
 externals/iem16/src/del16read~.d.17785    |  0
 externals/iem16/src/del16read~.d.17834    |  0
 externals/iem16/src/del16read~.d.1816     |  0
 externals/iem16/src/del16read~.d.18190    |  0
 externals/iem16/src/del16read~.d.18614    |  0
 externals/iem16/src/del16read~.d.19559    |  0
 externals/iem16/src/del16read~.d.19787    |  0
 externals/iem16/src/del16read~.d.20012    |  0
 externals/iem16/src/del16read~.d.20572    |  0
 externals/iem16/src/del16read~.d.20788    |  0
 externals/iem16/src/del16read~.d.20897    |  0
 externals/iem16/src/del16read~.d.21289    |  0
 externals/iem16/src/del16read~.d.21427    |  0
 externals/iem16/src/del16read~.d.21606    |  0
 externals/iem16/src/del16read~.d.21632    |  0
 externals/iem16/src/del16read~.d.21642    |  0
 externals/iem16/src/del16read~.d.21839    |  0
 externals/iem16/src/del16read~.d.21866    |  0
 externals/iem16/src/del16read~.d.21941    |  0
 externals/iem16/src/del16read~.d.23192    |  0
 externals/iem16/src/del16read~.d.23624    |  0
 externals/iem16/src/del16read~.d.23753    |  0
 externals/iem16/src/del16read~.d.23891    |  0
 externals/iem16/src/del16read~.d.23948    |  0
 externals/iem16/src/del16read~.d.23966    |  0
 externals/iem16/src/del16read~.d.2406     |  0
 externals/iem16/src/del16read~.d.24146    |  0
 externals/iem16/src/del16read~.d.2424     |  0
 externals/iem16/src/del16read~.d.24371    |  0
 externals/iem16/src/del16read~.d.24473    |  0
 externals/iem16/src/del16read~.d.24805    |  0
 externals/iem16/src/del16read~.d.24947    |  0
 externals/iem16/src/del16read~.d.2518     |  0
 externals/iem16/src/del16read~.d.2530     |  0
 externals/iem16/src/del16read~.d.25886    |  0
 externals/iem16/src/del16read~.d.25944    |  0
 externals/iem16/src/del16read~.d.26280    |  0
 externals/iem16/src/del16read~.d.26353    |  0
 externals/iem16/src/del16read~.d.27099    |  0
 externals/iem16/src/del16read~.d.27227    |  0
 externals/iem16/src/del16read~.d.27587    |  0
 externals/iem16/src/del16read~.d.27659    |  0
 externals/iem16/src/del16read~.d.27665    |  0
 externals/iem16/src/del16read~.d.27682    |  0
 externals/iem16/src/del16read~.d.27928    |  0
 externals/iem16/src/del16read~.d.27930    |  0
 externals/iem16/src/del16read~.d.27996    |  0
 externals/iem16/src/del16read~.d.28359    |  0
 externals/iem16/src/del16read~.d.28509    |  0
 externals/iem16/src/del16read~.d.28613    |  0
 externals/iem16/src/del16read~.d.2863     |  0
 externals/iem16/src/del16read~.d.2867     |  0
 externals/iem16/src/del16read~.d.28680    |  0
 externals/iem16/src/del16read~.d.28955    |  0
 externals/iem16/src/del16read~.d.28965    |  0
 externals/iem16/src/del16read~.d.29538    |  0
 externals/iem16/src/del16read~.d.29546    |  0
 externals/iem16/src/del16read~.d.2996     |  0
 externals/iem16/src/del16read~.d.29984    |  0
 externals/iem16/src/del16read~.d.30243    |  0
 externals/iem16/src/del16read~.d.30771    |  0
 externals/iem16/src/del16read~.d.30891    |  0
 externals/iem16/src/del16read~.d.30944    |  0
 externals/iem16/src/del16read~.d.31059    |  0
 externals/iem16/src/del16read~.d.31150    |  0
 externals/iem16/src/del16read~.d.31801    |  0
 externals/iem16/src/del16read~.d.31870    |  0
 externals/iem16/src/del16read~.d.32070    |  0
 externals/iem16/src/del16read~.d.32344    |  0
 externals/iem16/src/del16read~.d.32406    |  0
 externals/iem16/src/del16read~.d.32447    |  0
 externals/iem16/src/del16read~.d.3246     |  0
 externals/iem16/src/del16read~.d.32527    |  0
 externals/iem16/src/del16read~.d.32579    |  0
 externals/iem16/src/del16read~.d.32636    |  0
 externals/iem16/src/del16read~.d.3410     |  0
 externals/iem16/src/del16read~.d.4149     |  0
 externals/iem16/src/del16read~.d.4465     |  0
 externals/iem16/src/del16read~.d.5051     |  0
 externals/iem16/src/del16read~.d.517      |  0
 externals/iem16/src/del16read~.d.5195     |  0
 externals/iem16/src/del16read~.d.5719     |  0
 externals/iem16/src/del16read~.d.6348     |  0
 externals/iem16/src/del16read~.d.6632     |  0
 externals/iem16/src/del16read~.d.6801     |  0
 externals/iem16/src/del16read~.d.6843     |  0
 externals/iem16/src/del16read~.d.6855     |  0
 externals/iem16/src/del16read~.d.7436     |  0
 externals/iem16/src/del16read~.d.827      |  0
 externals/iem16/src/del16read~.d.8397     |  0
 externals/iem16/src/del16read~.d.8398     |  0
 externals/iem16/src/del16read~.d.8457     |  0
 externals/iem16/src/del16read~.d.8637     |  0
 externals/iem16/src/del16read~.d.8731     |  0
 externals/iem16/src/del16read~.d.8817     |  0
 externals/iem16/src/del16read~.d.9054     |  0
 externals/iem16/src/del16read~.d.9133     |  0
 externals/iem16/src/del16read~.d.9785     |  0
 externals/iem16/src/del16write~.d.10332   |  0
 externals/iem16/src/del16write~.d.10472   |  0
 externals/iem16/src/del16write~.d.10821   |  0
 externals/iem16/src/del16write~.d.11246   |  0
 externals/iem16/src/del16write~.d.11271   |  0
 externals/iem16/src/del16write~.d.11613   |  0
 externals/iem16/src/del16write~.d.11960   |  0
 externals/iem16/src/del16write~.d.12052   |  0
 externals/iem16/src/del16write~.d.12192   |  0
 externals/iem16/src/del16write~.d.12470   |  0
 externals/iem16/src/del16write~.d.12679   |  0
 externals/iem16/src/del16write~.d.12694   |  0
 externals/iem16/src/del16write~.d.12833   |  0
 externals/iem16/src/del16write~.d.13103   |  0
 externals/iem16/src/del16write~.d.13159   |  0
 externals/iem16/src/del16write~.d.13194   |  0
 externals/iem16/src/del16write~.d.13715   |  0
 externals/iem16/src/del16write~.d.1378    |  0
 externals/iem16/src/del16write~.d.13983   |  0
 externals/iem16/src/del16write~.d.14200   |  0
 externals/iem16/src/del16write~.d.14405   |  0
 externals/iem16/src/del16write~.d.14605   |  0
 externals/iem16/src/del16write~.d.14757   |  0
 externals/iem16/src/del16write~.d.14779   |  0
 externals/iem16/src/del16write~.d.14860   |  0
 externals/iem16/src/del16write~.d.15290   |  0
 externals/iem16/src/del16write~.d.15442   |  0
 externals/iem16/src/del16write~.d.15477   |  0
 externals/iem16/src/del16write~.d.15508   |  0
 externals/iem16/src/del16write~.d.15606   |  0
 externals/iem16/src/del16write~.d.1572    |  0
 externals/iem16/src/del16write~.d.15767   |  0
 externals/iem16/src/del16write~.d.1605    |  0
 externals/iem16/src/del16write~.d.16840   |  0
 externals/iem16/src/del16write~.d.16912   |  0
 externals/iem16/src/del16write~.d.17576   |  0
 externals/iem16/src/del16write~.d.17612   |  0
 externals/iem16/src/del16write~.d.17614   |  0
 externals/iem16/src/del16write~.d.17662   |  0
 externals/iem16/src/del16write~.d.17781   |  0
 externals/iem16/src/del16write~.d.17830   |  0
 externals/iem16/src/del16write~.d.1812    |  0
 externals/iem16/src/del16write~.d.18186   |  0
 externals/iem16/src/del16write~.d.18610   |  0
 externals/iem16/src/del16write~.d.19555   |  0
 externals/iem16/src/del16write~.d.19783   |  0
 externals/iem16/src/del16write~.d.20008   |  0
 externals/iem16/src/del16write~.d.20568   |  0
 externals/iem16/src/del16write~.d.20784   |  0
 externals/iem16/src/del16write~.d.20893   |  0
 externals/iem16/src/del16write~.d.21285   |  0
 externals/iem16/src/del16write~.d.21423   |  0
 externals/iem16/src/del16write~.d.21602   |  0
 externals/iem16/src/del16write~.d.21628   |  0
 externals/iem16/src/del16write~.d.21638   |  0
 externals/iem16/src/del16write~.d.21835   |  0
 externals/iem16/src/del16write~.d.21862   |  0
 externals/iem16/src/del16write~.d.21937   |  0
 externals/iem16/src/del16write~.d.23188   |  0
 externals/iem16/src/del16write~.d.23620   |  0
 externals/iem16/src/del16write~.d.23749   |  0
 externals/iem16/src/del16write~.d.23887   |  0
 externals/iem16/src/del16write~.d.23944   |  0
 externals/iem16/src/del16write~.d.23962   |  0
 externals/iem16/src/del16write~.d.2402    |  0
 externals/iem16/src/del16write~.d.24142   |  0
 externals/iem16/src/del16write~.d.2420    |  0
 externals/iem16/src/del16write~.d.24367   |  0
 externals/iem16/src/del16write~.d.24469   |  0
 externals/iem16/src/del16write~.d.24801   |  0
 externals/iem16/src/del16write~.d.24943   |  0
 externals/iem16/src/del16write~.d.2514    |  0
 externals/iem16/src/del16write~.d.2526    |  0
 externals/iem16/src/del16write~.d.25882   |  0
 externals/iem16/src/del16write~.d.25940   |  0
 externals/iem16/src/del16write~.d.26276   |  0
 externals/iem16/src/del16write~.d.26349   |  0
 externals/iem16/src/del16write~.d.27095   |  0
 externals/iem16/src/del16write~.d.27223   |  0
 externals/iem16/src/del16write~.d.27583   |  0
 externals/iem16/src/del16write~.d.27655   |  0
 externals/iem16/src/del16write~.d.27661   |  0
 externals/iem16/src/del16write~.d.27678   |  0
 externals/iem16/src/del16write~.d.27924   |  0
 externals/iem16/src/del16write~.d.27926   |  0
 externals/iem16/src/del16write~.d.27992   |  0
 externals/iem16/src/del16write~.d.28355   |  0
 externals/iem16/src/del16write~.d.28505   |  0
 externals/iem16/src/del16write~.d.2859    |  0
 externals/iem16/src/del16write~.d.28609   |  0
 externals/iem16/src/del16write~.d.2862    |  0
 externals/iem16/src/del16write~.d.28676   |  0
 externals/iem16/src/del16write~.d.28951   |  0
 externals/iem16/src/del16write~.d.28961   |  0
 externals/iem16/src/del16write~.d.29534   |  0
 externals/iem16/src/del16write~.d.29542   |  0
 externals/iem16/src/del16write~.d.2992    |  0
 externals/iem16/src/del16write~.d.29980   |  0
 externals/iem16/src/del16write~.d.30239   |  0
 externals/iem16/src/del16write~.d.30767   |  0
 externals/iem16/src/del16write~.d.30887   |  0
 externals/iem16/src/del16write~.d.30940   |  0
 externals/iem16/src/del16write~.d.31055   |  0
 externals/iem16/src/del16write~.d.31146   |  0
 externals/iem16/src/del16write~.d.31797   |  0
 externals/iem16/src/del16write~.d.31866   |  0
 externals/iem16/src/del16write~.d.32066   |  0
 externals/iem16/src/del16write~.d.32340   |  0
 externals/iem16/src/del16write~.d.3240    |  0
 externals/iem16/src/del16write~.d.32402   |  0
 externals/iem16/src/del16write~.d.32443   |  0
 externals/iem16/src/del16write~.d.32523   |  0
 externals/iem16/src/del16write~.d.32575   |  0
 externals/iem16/src/del16write~.d.32632   |  0
 externals/iem16/src/del16write~.d.3406    |  0
 externals/iem16/src/del16write~.d.4145    |  0
 externals/iem16/src/del16write~.d.4461    |  0
 externals/iem16/src/del16write~.d.5047    |  0
 externals/iem16/src/del16write~.d.513     |  0
 externals/iem16/src/del16write~.d.5191    |  0
 externals/iem16/src/del16write~.d.5715    |  0
 externals/iem16/src/del16write~.d.6344    |  0
 externals/iem16/src/del16write~.d.6628    |  0
 externals/iem16/src/del16write~.d.6797    |  0
 externals/iem16/src/del16write~.d.6839    |  0
 externals/iem16/src/del16write~.d.6851    |  0
 externals/iem16/src/del16write~.d.7432    |  0
 externals/iem16/src/del16write~.d.823     |  0
 externals/iem16/src/del16write~.d.8393    |  0
 externals/iem16/src/del16write~.d.8394    |  0
 externals/iem16/src/del16write~.d.8453    |  0
 externals/iem16/src/del16write~.d.8633    |  0
 externals/iem16/src/del16write~.d.8727    |  0
 externals/iem16/src/del16write~.d.8813    |  0
 externals/iem16/src/del16write~.d.9050    |  0
 externals/iem16/src/del16write~.d.9129    |  0
 externals/iem16/src/del16write~.d.9781    |  0
 externals/iem16/src/iem16.d.10284         |  0
 externals/iem16/src/iem16.d.10424         |  0
 externals/iem16/src/iem16.d.10773         |  0
 externals/iem16/src/iem16.d.11198         |  0
 externals/iem16/src/iem16.d.11223         |  0
 externals/iem16/src/iem16.d.11565         |  0
 externals/iem16/src/iem16.d.11912         |  0
 externals/iem16/src/iem16.d.12004         |  0
 externals/iem16/src/iem16.d.1208          |  0
 externals/iem16/src/iem16.d.12144         |  0
 externals/iem16/src/iem16.d.12422         |  0
 externals/iem16/src/iem16.d.12631         |  0
 externals/iem16/src/iem16.d.12646         |  0
 externals/iem16/src/iem16.d.12785         |  0
 externals/iem16/src/iem16.d.13055         |  0
 externals/iem16/src/iem16.d.13111         |  0
 externals/iem16/src/iem16.d.13146         |  0
 externals/iem16/src/iem16.d.13667         |  0
 externals/iem16/src/iem16.d.13935         |  0
 externals/iem16/src/iem16.d.14152         |  0
 externals/iem16/src/iem16.d.14357         |  0
 externals/iem16/src/iem16.d.14557         |  0
 externals/iem16/src/iem16.d.14709         |  0
 externals/iem16/src/iem16.d.14731         |  0
 externals/iem16/src/iem16.d.14812         |  0
 externals/iem16/src/iem16.d.1524          |  0
 externals/iem16/src/iem16.d.15242         |  0
 externals/iem16/src/iem16.d.15394         |  0
 externals/iem16/src/iem16.d.15429         |  0
 externals/iem16/src/iem16.d.15460         |  0
 externals/iem16/src/iem16.d.15558         |  0
 externals/iem16/src/iem16.d.1557          |  0
 externals/iem16/src/iem16.d.15719         |  0
 externals/iem16/src/iem16.d.16792         |  0
 externals/iem16/src/iem16.d.16864         |  0
 externals/iem16/src/iem16.d.17528         |  0
 externals/iem16/src/iem16.d.17564         |  0
 externals/iem16/src/iem16.d.17566         |  0
 externals/iem16/src/iem16.d.17614         |  0
 externals/iem16/src/iem16.d.1762          |  0
 externals/iem16/src/iem16.d.17733         |  0
 externals/iem16/src/iem16.d.17782         |  0
 externals/iem16/src/iem16.d.18138         |  0
 externals/iem16/src/iem16.d.18562         |  0
 externals/iem16/src/iem16.d.19507         |  0
 externals/iem16/src/iem16.d.19735         |  0
 externals/iem16/src/iem16.d.19960         |  0
 externals/iem16/src/iem16.d.20520         |  0
 externals/iem16/src/iem16.d.20736         |  0
 externals/iem16/src/iem16.d.20845         |  0
 externals/iem16/src/iem16.d.21237         |  0
 externals/iem16/src/iem16.d.21375         |  0
 externals/iem16/src/iem16.d.21554         |  0
 externals/iem16/src/iem16.d.21580         |  0
 externals/iem16/src/iem16.d.21590         |  0
 externals/iem16/src/iem16.d.21787         |  0
 externals/iem16/src/iem16.d.21814         |  0
 externals/iem16/src/iem16.d.21889         |  0
 externals/iem16/src/iem16.d.23140         |  0
 externals/iem16/src/iem16.d.2354          |  0
 externals/iem16/src/iem16.d.23572         |  0
 externals/iem16/src/iem16.d.23701         |  0
 externals/iem16/src/iem16.d.2372          |  0
 externals/iem16/src/iem16.d.23839         |  0
 externals/iem16/src/iem16.d.23896         |  0
 externals/iem16/src/iem16.d.23914         |  0
 externals/iem16/src/iem16.d.24091         |  0
 externals/iem16/src/iem16.d.24319         |  0
 externals/iem16/src/iem16.d.24421         |  0
 externals/iem16/src/iem16.d.2463          |  0
 externals/iem16/src/iem16.d.24753         |  0
 externals/iem16/src/iem16.d.2478          |  0
 externals/iem16/src/iem16.d.24895         |  0
 externals/iem16/src/iem16.d.25834         |  0
 externals/iem16/src/iem16.d.25892         |  0
 externals/iem16/src/iem16.d.26228         |  0
 externals/iem16/src/iem16.d.26301         |  0
 externals/iem16/src/iem16.d.27047         |  0
 externals/iem16/src/iem16.d.27175         |  0
 externals/iem16/src/iem16.d.27535         |  0
 externals/iem16/src/iem16.d.27607         |  0
 externals/iem16/src/iem16.d.27613         |  0
 externals/iem16/src/iem16.d.27630         |  0
 externals/iem16/src/iem16.d.27876         |  0
 externals/iem16/src/iem16.d.27878         |  0
 externals/iem16/src/iem16.d.27944         |  0
 externals/iem16/src/iem16.d.2810          |  0
 externals/iem16/src/iem16.d.2814          |  0
 externals/iem16/src/iem16.d.28307         |  0
 externals/iem16/src/iem16.d.28457         |  0
 externals/iem16/src/iem16.d.28561         |  0
 externals/iem16/src/iem16.d.28628         |  0
 externals/iem16/src/iem16.d.28903         |  0
 externals/iem16/src/iem16.d.28913         |  0
 externals/iem16/src/iem16.d.2942          |  0
 externals/iem16/src/iem16.d.29478         |  0
 externals/iem16/src/iem16.d.29494         |  0
 externals/iem16/src/iem16.d.29932         |  0
 externals/iem16/src/iem16.d.30191         |  0
 externals/iem16/src/iem16.d.30719         |  0
 externals/iem16/src/iem16.d.30839         |  0
 externals/iem16/src/iem16.d.30892         |  0
 externals/iem16/src/iem16.d.31007         |  0
 externals/iem16/src/iem16.d.31098         |  0
 externals/iem16/src/iem16.d.3170          |  0
 externals/iem16/src/iem16.d.31749         |  0
 externals/iem16/src/iem16.d.31818         |  0
 externals/iem16/src/iem16.d.32018         |  0
 externals/iem16/src/iem16.d.32292         |  0
 externals/iem16/src/iem16.d.32354         |  0
 externals/iem16/src/iem16.d.32395         |  0
 externals/iem16/src/iem16.d.32475         |  0
 externals/iem16/src/iem16.d.32527         |  0
 externals/iem16/src/iem16.d.32584         |  0
 externals/iem16/src/iem16.d.3358          |  0
 externals/iem16/src/iem16.d.4097          |  0
 externals/iem16/src/iem16.d.4413          |  0
 externals/iem16/src/iem16.d.465           |  0
 externals/iem16/src/iem16.d.4999          |  0
 externals/iem16/src/iem16.d.5143          |  0
 externals/iem16/src/iem16.d.5667          |  0
 externals/iem16/src/iem16.d.6296          |  0
 externals/iem16/src/iem16.d.6580          |  0
 externals/iem16/src/iem16.d.6749          |  0
 externals/iem16/src/iem16.d.6791          |  0
 externals/iem16/src/iem16.d.6803          |  0
 externals/iem16/src/iem16.d.7384          |  0
 externals/iem16/src/iem16.d.774           |  0
 externals/iem16/src/iem16.d.8345          |  0
 externals/iem16/src/iem16.d.8346          |  0
 externals/iem16/src/iem16.d.8405          |  0
 externals/iem16/src/iem16.d.8585          |  0
 externals/iem16/src/iem16.d.8679          |  0
 externals/iem16/src/iem16.d.8765          |  0
 externals/iem16/src/iem16.d.9002          |  0
 externals/iem16/src/iem16.d.9081          |  0
 externals/iem16/src/iem16.d.9733          |  0
 externals/iem16/src/iem16_delay.h         | 51 -----------------------
 externals/iem16/src/tab16play~.d.10328    |  0
 externals/iem16/src/tab16play~.d.10468    |  0
 externals/iem16/src/tab16play~.d.10817    |  0
 externals/iem16/src/tab16play~.d.11242    |  0
 externals/iem16/src/tab16play~.d.11267    |  0
 externals/iem16/src/tab16play~.d.11609    |  0
 externals/iem16/src/tab16play~.d.11956    |  0
 externals/iem16/src/tab16play~.d.12048    |  0
 externals/iem16/src/tab16play~.d.12188    |  0
 externals/iem16/src/tab16play~.d.12466    |  0
 externals/iem16/src/tab16play~.d.12675    |  0
 externals/iem16/src/tab16play~.d.12690    |  0
 externals/iem16/src/tab16play~.d.12829    |  0
 externals/iem16/src/tab16play~.d.13099    |  0
 externals/iem16/src/tab16play~.d.13155    |  0
 externals/iem16/src/tab16play~.d.13190    |  0
 externals/iem16/src/tab16play~.d.1370     |  0
 externals/iem16/src/tab16play~.d.13711    |  0
 externals/iem16/src/tab16play~.d.13979    |  0
 externals/iem16/src/tab16play~.d.14196    |  0
 externals/iem16/src/tab16play~.d.14401    |  0
 externals/iem16/src/tab16play~.d.14601    |  0
 externals/iem16/src/tab16play~.d.14753    |  0
 externals/iem16/src/tab16play~.d.14775    |  0
 externals/iem16/src/tab16play~.d.14856    |  0
 externals/iem16/src/tab16play~.d.15286    |  0
 externals/iem16/src/tab16play~.d.15438    |  0
 externals/iem16/src/tab16play~.d.15473    |  0
 externals/iem16/src/tab16play~.d.15504    |  0
 externals/iem16/src/tab16play~.d.15602    |  0
 externals/iem16/src/tab16play~.d.1568     |  0
 externals/iem16/src/tab16play~.d.15763    |  0
 externals/iem16/src/tab16play~.d.1601     |  0
 externals/iem16/src/tab16play~.d.16836    |  0
 externals/iem16/src/tab16play~.d.16908    |  0
 externals/iem16/src/tab16play~.d.17572    |  0
 externals/iem16/src/tab16play~.d.17608    |  0
 externals/iem16/src/tab16play~.d.17610    |  0
 externals/iem16/src/tab16play~.d.17658    |  0
 externals/iem16/src/tab16play~.d.17777    |  0
 externals/iem16/src/tab16play~.d.17826    |  0
 externals/iem16/src/tab16play~.d.1808     |  0
 externals/iem16/src/tab16play~.d.18182    |  0
 externals/iem16/src/tab16play~.d.18606    |  0
 externals/iem16/src/tab16play~.d.19551    |  0
 externals/iem16/src/tab16play~.d.19779    |  0
 externals/iem16/src/tab16play~.d.20004    |  0
 externals/iem16/src/tab16play~.d.20564    |  0
 externals/iem16/src/tab16play~.d.20780    |  0
 externals/iem16/src/tab16play~.d.20889    |  0
 externals/iem16/src/tab16play~.d.21281    |  0
 externals/iem16/src/tab16play~.d.21419    |  0
 externals/iem16/src/tab16play~.d.21624    |  0
 externals/iem16/src/tab16play~.d.21634    |  0
 externals/iem16/src/tab16play~.d.21831    |  0
 externals/iem16/src/tab16play~.d.21858    |  0
 externals/iem16/src/tab16play~.d.21933    |  0
 externals/iem16/src/tab16play~.d.23184    |  0
 externals/iem16/src/tab16play~.d.23616    |  0
 externals/iem16/src/tab16play~.d.23745    |  0
 externals/iem16/src/tab16play~.d.23883    |  0
 externals/iem16/src/tab16play~.d.23940    |  0
 externals/iem16/src/tab16play~.d.23958    |  0
 externals/iem16/src/tab16play~.d.2398     |  0
 externals/iem16/src/tab16play~.d.24138    |  0
 externals/iem16/src/tab16play~.d.2416     |  0
 externals/iem16/src/tab16play~.d.24363    |  0
 externals/iem16/src/tab16play~.d.24465    |  0
 externals/iem16/src/tab16play~.d.24797    |  0
 externals/iem16/src/tab16play~.d.24939    |  0
 externals/iem16/src/tab16play~.d.2510     |  0
 externals/iem16/src/tab16play~.d.2522     |  0
 externals/iem16/src/tab16play~.d.25878    |  0
 externals/iem16/src/tab16play~.d.25936    |  0
 externals/iem16/src/tab16play~.d.26272    |  0
 externals/iem16/src/tab16play~.d.26345    |  0
 externals/iem16/src/tab16play~.d.27091    |  0
 externals/iem16/src/tab16play~.d.27219    |  0
 externals/iem16/src/tab16play~.d.27579    |  0
 externals/iem16/src/tab16play~.d.27651    |  0
 externals/iem16/src/tab16play~.d.27657    |  0
 externals/iem16/src/tab16play~.d.27674    |  0
 externals/iem16/src/tab16play~.d.27920    |  0
 externals/iem16/src/tab16play~.d.27922    |  0
 externals/iem16/src/tab16play~.d.27988    |  0
 externals/iem16/src/tab16play~.d.28351    |  0
 externals/iem16/src/tab16play~.d.28501    |  0
 externals/iem16/src/tab16play~.d.2854     |  0
 externals/iem16/src/tab16play~.d.2858     |  0
 externals/iem16/src/tab16play~.d.28605    |  0
 externals/iem16/src/tab16play~.d.28672    |  0
 externals/iem16/src/tab16play~.d.28947    |  0
 externals/iem16/src/tab16play~.d.28957    |  0
 externals/iem16/src/tab16play~.d.29530    |  0
 externals/iem16/src/tab16play~.d.29538    |  0
 externals/iem16/src/tab16play~.d.2988     |  0
 externals/iem16/src/tab16play~.d.29976    |  0
 externals/iem16/src/tab16play~.d.30235    |  0
 externals/iem16/src/tab16play~.d.30763    |  0
 externals/iem16/src/tab16play~.d.30883    |  0
 externals/iem16/src/tab16play~.d.30936    |  0
 externals/iem16/src/tab16play~.d.31051    |  0
 externals/iem16/src/tab16play~.d.31142    |  0
 externals/iem16/src/tab16play~.d.31793    |  0
 externals/iem16/src/tab16play~.d.31862    |  0
 externals/iem16/src/tab16play~.d.32062    |  0
 externals/iem16/src/tab16play~.d.3231     |  0
 externals/iem16/src/tab16play~.d.32336    |  0
 externals/iem16/src/tab16play~.d.32398    |  0
 externals/iem16/src/tab16play~.d.32439    |  0
 externals/iem16/src/tab16play~.d.32519    |  0
 externals/iem16/src/tab16play~.d.32571    |  0
 externals/iem16/src/tab16play~.d.32628    |  0
 externals/iem16/src/tab16play~.d.3402     |  0
 externals/iem16/src/tab16play~.d.4141     |  0
 externals/iem16/src/tab16play~.d.4457     |  0
 externals/iem16/src/tab16play~.d.5043     |  0
 externals/iem16/src/tab16play~.d.509      |  0
 externals/iem16/src/tab16play~.d.5187     |  0
 externals/iem16/src/tab16play~.d.5711     |  0
 externals/iem16/src/tab16play~.d.6340     |  0
 externals/iem16/src/tab16play~.d.6624     |  0
 externals/iem16/src/tab16play~.d.6793     |  0
 externals/iem16/src/tab16play~.d.6835     |  0
 externals/iem16/src/tab16play~.d.6847     |  0
 externals/iem16/src/tab16play~.d.7428     |  0
 externals/iem16/src/tab16play~.d.819      |  0
 externals/iem16/src/tab16play~.d.8389     |  0
 externals/iem16/src/tab16play~.d.8449     |  0
 externals/iem16/src/tab16play~.d.8629     |  0
 externals/iem16/src/tab16play~.d.8723     |  0
 externals/iem16/src/tab16play~.d.9046     |  0
 externals/iem16/src/tab16play~.d.9125     |  0
 externals/iem16/src/tab16play~.d.9777     |  0
 externals/iem16/src/tab16read.d.10324     |  0
 externals/iem16/src/tab16read.d.10464     |  0
 externals/iem16/src/tab16read.d.10813     |  0
 externals/iem16/src/tab16read.d.11238     |  0
 externals/iem16/src/tab16read.d.11263     |  0
 externals/iem16/src/tab16read.d.11605     |  0
 externals/iem16/src/tab16read.d.11952     |  0
 externals/iem16/src/tab16read.d.12044     |  0
 externals/iem16/src/tab16read.d.12184     |  0
 externals/iem16/src/tab16read.d.12462     |  0
 externals/iem16/src/tab16read.d.12671     |  0
 externals/iem16/src/tab16read.d.12686     |  0
 externals/iem16/src/tab16read.d.12825     |  0
 externals/iem16/src/tab16read.d.13095     |  0
 externals/iem16/src/tab16read.d.13151     |  0
 externals/iem16/src/tab16read.d.13186     |  0
 externals/iem16/src/tab16read.d.1353      |  0
 externals/iem16/src/tab16read.d.13707     |  0
 externals/iem16/src/tab16read.d.13975     |  0
 externals/iem16/src/tab16read.d.14192     |  0
 externals/iem16/src/tab16read.d.14397     |  0
 externals/iem16/src/tab16read.d.14597     |  0
 externals/iem16/src/tab16read.d.14749     |  0
 externals/iem16/src/tab16read.d.14771     |  0
 externals/iem16/src/tab16read.d.14852     |  0
 externals/iem16/src/tab16read.d.15282     |  0
 externals/iem16/src/tab16read.d.15434     |  0
 externals/iem16/src/tab16read.d.15469     |  0
 externals/iem16/src/tab16read.d.15500     |  0
 externals/iem16/src/tab16read.d.15598     |  0
 externals/iem16/src/tab16read.d.1564      |  0
 externals/iem16/src/tab16read.d.15759     |  0
 externals/iem16/src/tab16read.d.1597      |  0
 externals/iem16/src/tab16read.d.16904     |  0
 externals/iem16/src/tab16read.d.17568     |  0
 externals/iem16/src/tab16read.d.17604     |  0
 externals/iem16/src/tab16read.d.17606     |  0
 externals/iem16/src/tab16read.d.17654     |  0
 externals/iem16/src/tab16read.d.17773     |  0
 externals/iem16/src/tab16read.d.17822     |  0
 externals/iem16/src/tab16read.d.1804      |  0
 externals/iem16/src/tab16read.d.18178     |  0
 externals/iem16/src/tab16read.d.18602     |  0
 externals/iem16/src/tab16read.d.19547     |  0
 externals/iem16/src/tab16read.d.19775     |  0
 externals/iem16/src/tab16read.d.20000     |  0
 externals/iem16/src/tab16read.d.20560     |  0
 externals/iem16/src/tab16read.d.20776     |  0
 externals/iem16/src/tab16read.d.20885     |  0
 externals/iem16/src/tab16read.d.21277     |  0
 externals/iem16/src/tab16read.d.21415     |  0
 externals/iem16/src/tab16read.d.21594     |  0
 externals/iem16/src/tab16read.d.21620     |  0
 externals/iem16/src/tab16read.d.21630     |  0
 externals/iem16/src/tab16read.d.21827     |  0
 externals/iem16/src/tab16read.d.21854     |  0
 externals/iem16/src/tab16read.d.21929     |  0
 externals/iem16/src/tab16read.d.23180     |  0
 externals/iem16/src/tab16read.d.23612     |  0
 externals/iem16/src/tab16read.d.23741     |  0
 externals/iem16/src/tab16read.d.23879     |  0
 externals/iem16/src/tab16read.d.23936     |  0
 externals/iem16/src/tab16read.d.2394      |  0
 externals/iem16/src/tab16read.d.23954     |  0
 externals/iem16/src/tab16read.d.2412      |  0
 externals/iem16/src/tab16read.d.24134     |  0
 externals/iem16/src/tab16read.d.24359     |  0
 externals/iem16/src/tab16read.d.24461     |  0
 externals/iem16/src/tab16read.d.24793     |  0
 externals/iem16/src/tab16read.d.24935     |  0
 externals/iem16/src/tab16read.d.2506      |  0
 externals/iem16/src/tab16read.d.2518      |  0
 externals/iem16/src/tab16read.d.25874     |  0
 externals/iem16/src/tab16read.d.25932     |  0
 externals/iem16/src/tab16read.d.26268     |  0
 externals/iem16/src/tab16read.d.26341     |  0
 externals/iem16/src/tab16read.d.27087     |  0
 externals/iem16/src/tab16read.d.27215     |  0
 externals/iem16/src/tab16read.d.27575     |  0
 externals/iem16/src/tab16read.d.27647     |  0
 externals/iem16/src/tab16read.d.27653     |  0
 externals/iem16/src/tab16read.d.27670     |  0
 externals/iem16/src/tab16read.d.27916     |  0
 externals/iem16/src/tab16read.d.27918     |  0
 externals/iem16/src/tab16read.d.27984     |  0
 externals/iem16/src/tab16read.d.28347     |  0
 externals/iem16/src/tab16read.d.28497     |  0
 externals/iem16/src/tab16read.d.2850      |  0
 externals/iem16/src/tab16read.d.2854      |  0
 externals/iem16/src/tab16read.d.28601     |  0
 externals/iem16/src/tab16read.d.28668     |  0
 externals/iem16/src/tab16read.d.28943     |  0
 externals/iem16/src/tab16read.d.28953     |  0
 externals/iem16/src/tab16read.d.29524     |  0
 externals/iem16/src/tab16read.d.29534     |  0
 externals/iem16/src/tab16read.d.2984      |  0
 externals/iem16/src/tab16read.d.29972     |  0
 externals/iem16/src/tab16read.d.30231     |  0
 externals/iem16/src/tab16read.d.30759     |  0
 externals/iem16/src/tab16read.d.30879     |  0
 externals/iem16/src/tab16read.d.30932     |  0
 externals/iem16/src/tab16read.d.31047     |  0
 externals/iem16/src/tab16read.d.31138     |  0
 externals/iem16/src/tab16read.d.31789     |  0
 externals/iem16/src/tab16read.d.31858     |  0
 externals/iem16/src/tab16read.d.32058     |  0
 externals/iem16/src/tab16read.d.3223      |  0
 externals/iem16/src/tab16read.d.32332     |  0
 externals/iem16/src/tab16read.d.32394     |  0
 externals/iem16/src/tab16read.d.32435     |  0
 externals/iem16/src/tab16read.d.32515     |  0
 externals/iem16/src/tab16read.d.32567     |  0
 externals/iem16/src/tab16read.d.32624     |  0
 externals/iem16/src/tab16read.d.3398      |  0
 externals/iem16/src/tab16read.d.4137      |  0
 externals/iem16/src/tab16read.d.4453      |  0
 externals/iem16/src/tab16read.d.5039      |  0
 externals/iem16/src/tab16read.d.505       |  0
 externals/iem16/src/tab16read.d.5183      |  0
 externals/iem16/src/tab16read.d.5707      |  0
 externals/iem16/src/tab16read.d.6336      |  0
 externals/iem16/src/tab16read.d.6620      |  0
 externals/iem16/src/tab16read.d.6789      |  0
 externals/iem16/src/tab16read.d.6831      |  0
 externals/iem16/src/tab16read.d.6843      |  0
 externals/iem16/src/tab16read.d.7424      |  0
 externals/iem16/src/tab16read.d.815       |  0
 externals/iem16/src/tab16read.d.8385      |  0
 externals/iem16/src/tab16read.d.8386      |  0
 externals/iem16/src/tab16read.d.8445      |  0
 externals/iem16/src/tab16read.d.8625      |  0
 externals/iem16/src/tab16read.d.8719      |  0
 externals/iem16/src/tab16read.d.8805      |  0
 externals/iem16/src/tab16read.d.9042      |  0
 externals/iem16/src/tab16read.d.9121      |  0
 externals/iem16/src/tab16read.d.9773      |  0
 externals/iem16/src/tab16read4.d.10320    |  0
 externals/iem16/src/tab16read4.d.10460    |  0
 externals/iem16/src/tab16read4.d.10809    |  0
 externals/iem16/src/tab16read4.d.11234    |  0
 externals/iem16/src/tab16read4.d.11259    |  0
 externals/iem16/src/tab16read4.d.11601    |  0
 externals/iem16/src/tab16read4.d.11948    |  0
 externals/iem16/src/tab16read4.d.12040    |  0
 externals/iem16/src/tab16read4.d.12180    |  0
 externals/iem16/src/tab16read4.d.12458    |  0
 externals/iem16/src/tab16read4.d.12667    |  0
 externals/iem16/src/tab16read4.d.12682    |  0
 externals/iem16/src/tab16read4.d.12821    |  0
 externals/iem16/src/tab16read4.d.13091    |  0
 externals/iem16/src/tab16read4.d.13147    |  0
 externals/iem16/src/tab16read4.d.13182    |  0
 externals/iem16/src/tab16read4.d.1339     |  0
 externals/iem16/src/tab16read4.d.13703    |  0
 externals/iem16/src/tab16read4.d.13971    |  0
 externals/iem16/src/tab16read4.d.14393    |  0
 externals/iem16/src/tab16read4.d.14593    |  0
 externals/iem16/src/tab16read4.d.14745    |  0
 externals/iem16/src/tab16read4.d.14767    |  0
 externals/iem16/src/tab16read4.d.14848    |  0
 externals/iem16/src/tab16read4.d.15278    |  0
 externals/iem16/src/tab16read4.d.15430    |  0
 externals/iem16/src/tab16read4.d.15496    |  0
 externals/iem16/src/tab16read4.d.15594    |  0
 externals/iem16/src/tab16read4.d.1560     |  0
 externals/iem16/src/tab16read4.d.15755    |  0
 externals/iem16/src/tab16read4.d.1593     |  0
 externals/iem16/src/tab16read4.d.16828    |  0
 externals/iem16/src/tab16read4.d.16900    |  0
 externals/iem16/src/tab16read4.d.17564    |  0
 externals/iem16/src/tab16read4.d.17600    |  0
 externals/iem16/src/tab16read4.d.17602    |  0
 externals/iem16/src/tab16read4.d.17650    |  0
 externals/iem16/src/tab16read4.d.17769    |  0
 externals/iem16/src/tab16read4.d.17818    |  0
 externals/iem16/src/tab16read4.d.1799     |  0
 externals/iem16/src/tab16read4.d.18174    |  0
 externals/iem16/src/tab16read4.d.18598    |  0
 externals/iem16/src/tab16read4.d.19543    |  0
 externals/iem16/src/tab16read4.d.19771    |  0
 externals/iem16/src/tab16read4.d.19996    |  0
 externals/iem16/src/tab16read4.d.20556    |  0
 externals/iem16/src/tab16read4.d.20772    |  0
 externals/iem16/src/tab16read4.d.20881    |  0
 externals/iem16/src/tab16read4.d.21273    |  0
 externals/iem16/src/tab16read4.d.21411    |  0
 externals/iem16/src/tab16read4.d.21590    |  0
 externals/iem16/src/tab16read4.d.21616    |  0
 externals/iem16/src/tab16read4.d.21626    |  0
 externals/iem16/src/tab16read4.d.21823    |  0
 externals/iem16/src/tab16read4.d.21925    |  0
 externals/iem16/src/tab16read4.d.23176    |  0
 externals/iem16/src/tab16read4.d.23608    |  0
 externals/iem16/src/tab16read4.d.23737    |  0
 externals/iem16/src/tab16read4.d.23875    |  0
 externals/iem16/src/tab16read4.d.2390     |  0
 externals/iem16/src/tab16read4.d.23932    |  0
 externals/iem16/src/tab16read4.d.23950    |  0
 externals/iem16/src/tab16read4.d.2408     |  0
 externals/iem16/src/tab16read4.d.24130    |  0
 externals/iem16/src/tab16read4.d.24355    |  0
 externals/iem16/src/tab16read4.d.24457    |  0
 externals/iem16/src/tab16read4.d.24789    |  0
 externals/iem16/src/tab16read4.d.24931    |  0
 externals/iem16/src/tab16read4.d.2501     |  0
 externals/iem16/src/tab16read4.d.2514     |  0
 externals/iem16/src/tab16read4.d.25870    |  0
 externals/iem16/src/tab16read4.d.25928    |  0
 externals/iem16/src/tab16read4.d.26264    |  0
 externals/iem16/src/tab16read4.d.26337    |  0
 externals/iem16/src/tab16read4.d.27083    |  0
 externals/iem16/src/tab16read4.d.27211    |  0
 externals/iem16/src/tab16read4.d.27571    |  0
 externals/iem16/src/tab16read4.d.27643    |  0
 externals/iem16/src/tab16read4.d.27649    |  0
 externals/iem16/src/tab16read4.d.27666    |  0
 externals/iem16/src/tab16read4.d.27912    |  0
 externals/iem16/src/tab16read4.d.27914    |  0
 externals/iem16/src/tab16read4.d.27980    |  0
 externals/iem16/src/tab16read4.d.28343    |  0
 externals/iem16/src/tab16read4.d.2846     |  0
 externals/iem16/src/tab16read4.d.28493    |  0
 externals/iem16/src/tab16read4.d.2850     |  0
 externals/iem16/src/tab16read4.d.28597    |  0
 externals/iem16/src/tab16read4.d.28664    |  0
 externals/iem16/src/tab16read4.d.28939    |  0
 externals/iem16/src/tab16read4.d.28949    |  0
 externals/iem16/src/tab16read4.d.29518    |  0
 externals/iem16/src/tab16read4.d.29530    |  0
 externals/iem16/src/tab16read4.d.2979     |  0
 externals/iem16/src/tab16read4.d.29968    |  0
 externals/iem16/src/tab16read4.d.30227    |  0
 externals/iem16/src/tab16read4.d.30755    |  0
 externals/iem16/src/tab16read4.d.30875    |  0
 externals/iem16/src/tab16read4.d.30928    |  0
 externals/iem16/src/tab16read4.d.31043    |  0
 externals/iem16/src/tab16read4.d.31134    |  0
 externals/iem16/src/tab16read4.d.31785    |  0
 externals/iem16/src/tab16read4.d.31854    |  0
 externals/iem16/src/tab16read4.d.32054    |  0
 externals/iem16/src/tab16read4.d.3219     |  0
 externals/iem16/src/tab16read4.d.32328    |  0
 externals/iem16/src/tab16read4.d.32390    |  0
 externals/iem16/src/tab16read4.d.32431    |  0
 externals/iem16/src/tab16read4.d.32511    |  0
 externals/iem16/src/tab16read4.d.32563    |  0
 externals/iem16/src/tab16read4.d.32620    |  0
 externals/iem16/src/tab16read4.d.3394     |  0
 externals/iem16/src/tab16read4.d.4133     |  0
 externals/iem16/src/tab16read4.d.4449     |  0
 externals/iem16/src/tab16read4.d.501      |  0
 externals/iem16/src/tab16read4.d.5035     |  0
 externals/iem16/src/tab16read4.d.5179     |  0
 externals/iem16/src/tab16read4.d.5703     |  0
 externals/iem16/src/tab16read4.d.6332     |  0
 externals/iem16/src/tab16read4.d.6616     |  0
 externals/iem16/src/tab16read4.d.6785     |  0
 externals/iem16/src/tab16read4.d.6827     |  0
 externals/iem16/src/tab16read4.d.6839     |  0
 externals/iem16/src/tab16read4.d.7420     |  0
 externals/iem16/src/tab16read4.d.811      |  0
 externals/iem16/src/tab16read4.d.8381     |  0
 externals/iem16/src/tab16read4.d.8382     |  0
 externals/iem16/src/tab16read4.d.8441     |  0
 externals/iem16/src/tab16read4.d.8621     |  0
 externals/iem16/src/tab16read4.d.8715     |  0
 externals/iem16/src/tab16read4.d.8801     |  0
 externals/iem16/src/tab16read4.d.9038     |  0
 externals/iem16/src/tab16read4.d.9117     |  0
 externals/iem16/src/tab16read4.d.9769     |  0
 externals/iem16/src/tab16read4~.d.10316   |  0
 externals/iem16/src/tab16read4~.d.10456   |  0
 externals/iem16/src/tab16read4~.d.10805   |  0
 externals/iem16/src/tab16read4~.d.11230   |  0
 externals/iem16/src/tab16read4~.d.11255   |  0
 externals/iem16/src/tab16read4~.d.11597   |  0
 externals/iem16/src/tab16read4~.d.11944   |  0
 externals/iem16/src/tab16read4~.d.12036   |  0
 externals/iem16/src/tab16read4~.d.12176   |  0
 externals/iem16/src/tab16read4~.d.12454   |  0
 externals/iem16/src/tab16read4~.d.12663   |  0
 externals/iem16/src/tab16read4~.d.12678   |  0
 externals/iem16/src/tab16read4~.d.12817   |  0
 externals/iem16/src/tab16read4~.d.13087   |  0
 externals/iem16/src/tab16read4~.d.13143   |  0
 externals/iem16/src/tab16read4~.d.13178   |  0
 externals/iem16/src/tab16read4~.d.1321    |  0
 externals/iem16/src/tab16read4~.d.13699   |  0
 externals/iem16/src/tab16read4~.d.13967   |  0
 externals/iem16/src/tab16read4~.d.14184   |  0
 externals/iem16/src/tab16read4~.d.14389   |  0
 externals/iem16/src/tab16read4~.d.14589   |  0
 externals/iem16/src/tab16read4~.d.14741   |  0
 externals/iem16/src/tab16read4~.d.14763   |  0
 externals/iem16/src/tab16read4~.d.14844   |  0
 externals/iem16/src/tab16read4~.d.15274   |  0
 externals/iem16/src/tab16read4~.d.15426   |  0
 externals/iem16/src/tab16read4~.d.15461   |  0
 externals/iem16/src/tab16read4~.d.15492   |  0
 externals/iem16/src/tab16read4~.d.1556    |  0
 externals/iem16/src/tab16read4~.d.15590   |  0
 externals/iem16/src/tab16read4~.d.15751   |  0
 externals/iem16/src/tab16read4~.d.1589    |  0
 externals/iem16/src/tab16read4~.d.16824   |  0
 externals/iem16/src/tab16read4~.d.16896   |  0
 externals/iem16/src/tab16read4~.d.17560   |  0
 externals/iem16/src/tab16read4~.d.17596   |  0
 externals/iem16/src/tab16read4~.d.17598   |  0
 externals/iem16/src/tab16read4~.d.17646   |  0
 externals/iem16/src/tab16read4~.d.17765   |  0
 externals/iem16/src/tab16read4~.d.17814   |  0
 externals/iem16/src/tab16read4~.d.1795    |  0
 externals/iem16/src/tab16read4~.d.18170   |  0
 externals/iem16/src/tab16read4~.d.18594   |  0
 externals/iem16/src/tab16read4~.d.19539   |  0
 externals/iem16/src/tab16read4~.d.19767   |  0
 externals/iem16/src/tab16read4~.d.19992   |  0
 externals/iem16/src/tab16read4~.d.20552   |  0
 externals/iem16/src/tab16read4~.d.20768   |  0
 externals/iem16/src/tab16read4~.d.20877   |  0
 externals/iem16/src/tab16read4~.d.21269   |  0
 externals/iem16/src/tab16read4~.d.21407   |  0
 externals/iem16/src/tab16read4~.d.21586   |  0
 externals/iem16/src/tab16read4~.d.21612   |  0
 externals/iem16/src/tab16read4~.d.21622   |  0
 externals/iem16/src/tab16read4~.d.21819   |  0
 externals/iem16/src/tab16read4~.d.21846   |  0
 externals/iem16/src/tab16read4~.d.21921   |  0
 externals/iem16/src/tab16read4~.d.23172   |  0
 externals/iem16/src/tab16read4~.d.23604   |  0
 externals/iem16/src/tab16read4~.d.23733   |  0
 externals/iem16/src/tab16read4~.d.2386    |  0
 externals/iem16/src/tab16read4~.d.23871   |  0
 externals/iem16/src/tab16read4~.d.23928   |  0
 externals/iem16/src/tab16read4~.d.23946   |  0
 externals/iem16/src/tab16read4~.d.2404    |  0
 externals/iem16/src/tab16read4~.d.24126   |  0
 externals/iem16/src/tab16read4~.d.24351   |  0
 externals/iem16/src/tab16read4~.d.24453   |  0
 externals/iem16/src/tab16read4~.d.24785   |  0
 externals/iem16/src/tab16read4~.d.24927   |  0
 externals/iem16/src/tab16read4~.d.2497    |  0
 externals/iem16/src/tab16read4~.d.2510    |  0
 externals/iem16/src/tab16read4~.d.25866   |  0
 externals/iem16/src/tab16read4~.d.25924   |  0
 externals/iem16/src/tab16read4~.d.26260   |  0
 externals/iem16/src/tab16read4~.d.26333   |  0
 externals/iem16/src/tab16read4~.d.27079   |  0
 externals/iem16/src/tab16read4~.d.27207   |  0
 externals/iem16/src/tab16read4~.d.27567   |  0
 externals/iem16/src/tab16read4~.d.27639   |  0
 externals/iem16/src/tab16read4~.d.27645   |  0
 externals/iem16/src/tab16read4~.d.27662   |  0
 externals/iem16/src/tab16read4~.d.27908   |  0
 externals/iem16/src/tab16read4~.d.27910   |  0
 externals/iem16/src/tab16read4~.d.27976   |  0
 externals/iem16/src/tab16read4~.d.28339   |  0
 externals/iem16/src/tab16read4~.d.2842    |  0
 externals/iem16/src/tab16read4~.d.2846    |  0
 externals/iem16/src/tab16read4~.d.28489   |  0
 externals/iem16/src/tab16read4~.d.28593   |  0
 externals/iem16/src/tab16read4~.d.28660   |  0
 externals/iem16/src/tab16read4~.d.28935   |  0
 externals/iem16/src/tab16read4~.d.28945   |  0
 externals/iem16/src/tab16read4~.d.29512   |  0
 externals/iem16/src/tab16read4~.d.29526   |  0
 externals/iem16/src/tab16read4~.d.2975    |  0
 externals/iem16/src/tab16read4~.d.29964   |  0
 externals/iem16/src/tab16read4~.d.30223   |  0
 externals/iem16/src/tab16read4~.d.30751   |  0
 externals/iem16/src/tab16read4~.d.30871   |  0
 externals/iem16/src/tab16read4~.d.30924   |  0
 externals/iem16/src/tab16read4~.d.31039   |  0
 externals/iem16/src/tab16read4~.d.31130   |  0
 externals/iem16/src/tab16read4~.d.31850   |  0
 externals/iem16/src/tab16read4~.d.32050   |  0
 externals/iem16/src/tab16read4~.d.3212    |  0
 externals/iem16/src/tab16read4~.d.32324   |  0
 externals/iem16/src/tab16read4~.d.32386   |  0
 externals/iem16/src/tab16read4~.d.32427   |  0
 externals/iem16/src/tab16read4~.d.32507   |  0
 externals/iem16/src/tab16read4~.d.32559   |  0
 externals/iem16/src/tab16read4~.d.32616   |  0
 externals/iem16/src/tab16read4~.d.3390    |  0
 externals/iem16/src/tab16read4~.d.4129    |  0
 externals/iem16/src/tab16read4~.d.4445    |  0
 externals/iem16/src/tab16read4~.d.497     |  0
 externals/iem16/src/tab16read4~.d.5031    |  0
 externals/iem16/src/tab16read4~.d.5175    |  0
 externals/iem16/src/tab16read4~.d.5699    |  0
 externals/iem16/src/tab16read4~.d.6328    |  0
 externals/iem16/src/tab16read4~.d.6612    |  0
 externals/iem16/src/tab16read4~.d.6781    |  0
 externals/iem16/src/tab16read4~.d.6823    |  0
 externals/iem16/src/tab16read4~.d.6835    |  0
 externals/iem16/src/tab16read4~.d.7416    |  0
 externals/iem16/src/tab16read4~.d.806     |  0
 externals/iem16/src/tab16read4~.d.8377    |  0
 externals/iem16/src/tab16read4~.d.8378    |  0
 externals/iem16/src/tab16read4~.d.8437    |  0
 externals/iem16/src/tab16read4~.d.8617    |  0
 externals/iem16/src/tab16read4~.d.8711    |  0
 externals/iem16/src/tab16read4~.d.8797    |  0
 externals/iem16/src/tab16read4~.d.9034    |  0
 externals/iem16/src/tab16read4~.d.9113    |  0
 externals/iem16/src/tab16read4~.d.9765    |  0
 externals/iem16/src/tab16read~.d.10312    |  0
 externals/iem16/src/tab16read~.d.10452    |  0
 externals/iem16/src/tab16read~.d.10801    |  0
 externals/iem16/src/tab16read~.d.11226    |  0
 externals/iem16/src/tab16read~.d.11251    |  0
 externals/iem16/src/tab16read~.d.11593    |  0
 externals/iem16/src/tab16read~.d.11940    |  0
 externals/iem16/src/tab16read~.d.12032    |  0
 externals/iem16/src/tab16read~.d.12172    |  0
 externals/iem16/src/tab16read~.d.12450    |  0
 externals/iem16/src/tab16read~.d.12659    |  0
 externals/iem16/src/tab16read~.d.12674    |  0
 externals/iem16/src/tab16read~.d.12813    |  0
 externals/iem16/src/tab16read~.d.1307     |  0
 externals/iem16/src/tab16read~.d.13083    |  0
 externals/iem16/src/tab16read~.d.13139    |  0
 externals/iem16/src/tab16read~.d.13174    |  0
 externals/iem16/src/tab16read~.d.13695    |  0
 externals/iem16/src/tab16read~.d.13963    |  0
 externals/iem16/src/tab16read~.d.14180    |  0
 externals/iem16/src/tab16read~.d.14385    |  0
 externals/iem16/src/tab16read~.d.14585    |  0
 externals/iem16/src/tab16read~.d.14759    |  0
 externals/iem16/src/tab16read~.d.14840    |  0
 externals/iem16/src/tab16read~.d.15270    |  0
 externals/iem16/src/tab16read~.d.15422    |  0
 externals/iem16/src/tab16read~.d.15457    |  0
 externals/iem16/src/tab16read~.d.15488    |  0
 externals/iem16/src/tab16read~.d.1552     |  0
 externals/iem16/src/tab16read~.d.15586    |  0
 externals/iem16/src/tab16read~.d.15747    |  0
 externals/iem16/src/tab16read~.d.1585     |  0
 externals/iem16/src/tab16read~.d.16820    |  0
 externals/iem16/src/tab16read~.d.16892    |  0
 externals/iem16/src/tab16read~.d.17556    |  0
 externals/iem16/src/tab16read~.d.17592    |  0
 externals/iem16/src/tab16read~.d.17594    |  0
 externals/iem16/src/tab16read~.d.17642    |  0
 externals/iem16/src/tab16read~.d.17761    |  0
 externals/iem16/src/tab16read~.d.17810    |  0
 externals/iem16/src/tab16read~.d.1791     |  0
 externals/iem16/src/tab16read~.d.18166    |  0
 externals/iem16/src/tab16read~.d.18590    |  0
 externals/iem16/src/tab16read~.d.19535    |  0
 externals/iem16/src/tab16read~.d.19763    |  0
 externals/iem16/src/tab16read~.d.19988    |  0
 externals/iem16/src/tab16read~.d.20548    |  0
 externals/iem16/src/tab16read~.d.20764    |  0
 externals/iem16/src/tab16read~.d.20873    |  0
 externals/iem16/src/tab16read~.d.21265    |  0
 externals/iem16/src/tab16read~.d.21403    |  0
 externals/iem16/src/tab16read~.d.21582    |  0
 externals/iem16/src/tab16read~.d.21608    |  0
 externals/iem16/src/tab16read~.d.21618    |  0
 externals/iem16/src/tab16read~.d.21815    |  0
 externals/iem16/src/tab16read~.d.21842    |  0
 externals/iem16/src/tab16read~.d.21917    |  0
 externals/iem16/src/tab16read~.d.23168    |  0
 externals/iem16/src/tab16read~.d.23600    |  0
 externals/iem16/src/tab16read~.d.23729    |  0
 externals/iem16/src/tab16read~.d.2382     |  0
 externals/iem16/src/tab16read~.d.23867    |  0
 externals/iem16/src/tab16read~.d.23924    |  0
 externals/iem16/src/tab16read~.d.23942    |  0
 externals/iem16/src/tab16read~.d.2400     |  0
 externals/iem16/src/tab16read~.d.24122    |  0
 externals/iem16/src/tab16read~.d.24347    |  0
 externals/iem16/src/tab16read~.d.24449    |  0
 externals/iem16/src/tab16read~.d.24781    |  0
 externals/iem16/src/tab16read~.d.2492     |  0
 externals/iem16/src/tab16read~.d.24923    |  0
 externals/iem16/src/tab16read~.d.2506     |  0
 externals/iem16/src/tab16read~.d.25862    |  0
 externals/iem16/src/tab16read~.d.25920    |  0
 externals/iem16/src/tab16read~.d.26256    |  0
 externals/iem16/src/tab16read~.d.26329    |  0
 externals/iem16/src/tab16read~.d.27075    |  0
 externals/iem16/src/tab16read~.d.27203    |  0
 externals/iem16/src/tab16read~.d.27563    |  0
 externals/iem16/src/tab16read~.d.27635    |  0
 externals/iem16/src/tab16read~.d.27641    |  0
 externals/iem16/src/tab16read~.d.27658    |  0
 externals/iem16/src/tab16read~.d.27904    |  0
 externals/iem16/src/tab16read~.d.27906    |  0
 externals/iem16/src/tab16read~.d.27972    |  0
 externals/iem16/src/tab16read~.d.28335    |  0
 externals/iem16/src/tab16read~.d.2838     |  0
 externals/iem16/src/tab16read~.d.2842     |  0
 externals/iem16/src/tab16read~.d.28485    |  0
 externals/iem16/src/tab16read~.d.28589    |  0
 externals/iem16/src/tab16read~.d.28656    |  0
 externals/iem16/src/tab16read~.d.28931    |  0
 externals/iem16/src/tab16read~.d.28941    |  0
 externals/iem16/src/tab16read~.d.29508    |  0
 externals/iem16/src/tab16read~.d.29522    |  0
 externals/iem16/src/tab16read~.d.2971     |  0
 externals/iem16/src/tab16read~.d.29960    |  0
 externals/iem16/src/tab16read~.d.30219    |  0
 externals/iem16/src/tab16read~.d.30747    |  0
 externals/iem16/src/tab16read~.d.30867    |  0
 externals/iem16/src/tab16read~.d.30920    |  0
 externals/iem16/src/tab16read~.d.31035    |  0
 externals/iem16/src/tab16read~.d.31126    |  0
 externals/iem16/src/tab16read~.d.31777    |  0
 externals/iem16/src/tab16read~.d.31846    |  0
 externals/iem16/src/tab16read~.d.32046    |  0
 externals/iem16/src/tab16read~.d.3207     |  0
 externals/iem16/src/tab16read~.d.32320    |  0
 externals/iem16/src/tab16read~.d.32382    |  0
 externals/iem16/src/tab16read~.d.32423    |  0
 externals/iem16/src/tab16read~.d.32503    |  0
 externals/iem16/src/tab16read~.d.32555    |  0
 externals/iem16/src/tab16read~.d.32612    |  0
 externals/iem16/src/tab16read~.d.3386     |  0
 externals/iem16/src/tab16read~.d.4125     |  0
 externals/iem16/src/tab16read~.d.4441     |  0
 externals/iem16/src/tab16read~.d.493      |  0
 externals/iem16/src/tab16read~.d.5027     |  0
 externals/iem16/src/tab16read~.d.5171     |  0
 externals/iem16/src/tab16read~.d.6608     |  0
 externals/iem16/src/tab16read~.d.6777     |  0
 externals/iem16/src/tab16read~.d.6819     |  0
 externals/iem16/src/tab16read~.d.6831     |  0
 externals/iem16/src/tab16read~.d.7412     |  0
 externals/iem16/src/tab16read~.d.802      |  0
 externals/iem16/src/tab16read~.d.8373     |  0
 externals/iem16/src/tab16read~.d.8374     |  0
 externals/iem16/src/tab16read~.d.8433     |  0
 externals/iem16/src/tab16read~.d.8613     |  0
 externals/iem16/src/tab16read~.d.8707     |  0
 externals/iem16/src/tab16read~.d.8793     |  0
 externals/iem16/src/tab16read~.d.9030     |  0
 externals/iem16/src/tab16read~.d.9109     |  0
 externals/iem16/src/tab16read~.d.9761     |  0
 externals/iem16/src/tab16receive~.d.10308 |  0
 externals/iem16/src/tab16receive~.d.10448 |  0
 externals/iem16/src/tab16receive~.d.10797 |  0
 externals/iem16/src/tab16receive~.d.11222 |  0
 externals/iem16/src/tab16receive~.d.11247 |  0
 externals/iem16/src/tab16receive~.d.11589 |  0
 externals/iem16/src/tab16receive~.d.11936 |  0
 externals/iem16/src/tab16receive~.d.12028 |  0
 externals/iem16/src/tab16receive~.d.12168 |  0
 externals/iem16/src/tab16receive~.d.12446 |  0
 externals/iem16/src/tab16receive~.d.12655 |  0
 externals/iem16/src/tab16receive~.d.12670 |  0
 externals/iem16/src/tab16receive~.d.12809 |  0
 externals/iem16/src/tab16receive~.d.1296  |  0
 externals/iem16/src/tab16receive~.d.13079 |  0
 externals/iem16/src/tab16receive~.d.13135 |  0
 externals/iem16/src/tab16receive~.d.13170 |  0
 externals/iem16/src/tab16receive~.d.13691 |  0
 externals/iem16/src/tab16receive~.d.13959 |  0
 externals/iem16/src/tab16receive~.d.14176 |  0
 externals/iem16/src/tab16receive~.d.14381 |  0
 externals/iem16/src/tab16receive~.d.14581 |  0
 externals/iem16/src/tab16receive~.d.14733 |  0
 externals/iem16/src/tab16receive~.d.14755 |  0
 externals/iem16/src/tab16receive~.d.14836 |  0
 externals/iem16/src/tab16receive~.d.15266 |  0
 externals/iem16/src/tab16receive~.d.15418 |  0
 externals/iem16/src/tab16receive~.d.15453 |  0
 externals/iem16/src/tab16receive~.d.1548  |  0
 externals/iem16/src/tab16receive~.d.15484 |  0
 externals/iem16/src/tab16receive~.d.15582 |  0
 externals/iem16/src/tab16receive~.d.15743 |  0
 externals/iem16/src/tab16receive~.d.1581  |  0
 externals/iem16/src/tab16receive~.d.16816 |  0
 externals/iem16/src/tab16receive~.d.16888 |  0
 externals/iem16/src/tab16receive~.d.17552 |  0
 externals/iem16/src/tab16receive~.d.17588 |  0
 externals/iem16/src/tab16receive~.d.17590 |  0
 externals/iem16/src/tab16receive~.d.17638 |  0
 externals/iem16/src/tab16receive~.d.17757 |  0
 externals/iem16/src/tab16receive~.d.17806 |  0
 externals/iem16/src/tab16receive~.d.1787  |  0
 externals/iem16/src/tab16receive~.d.18162 |  0
 externals/iem16/src/tab16receive~.d.18586 |  0
 externals/iem16/src/tab16receive~.d.19531 |  0
 externals/iem16/src/tab16receive~.d.19759 |  0
 externals/iem16/src/tab16receive~.d.20544 |  0
 externals/iem16/src/tab16receive~.d.20760 |  0
 externals/iem16/src/tab16receive~.d.20869 |  0
 externals/iem16/src/tab16receive~.d.21261 |  0
 externals/iem16/src/tab16receive~.d.21399 |  0
 externals/iem16/src/tab16receive~.d.21578 |  0
 externals/iem16/src/tab16receive~.d.21604 |  0
 externals/iem16/src/tab16receive~.d.21614 |  0
 externals/iem16/src/tab16receive~.d.21811 |  0
 externals/iem16/src/tab16receive~.d.21838 |  0
 externals/iem16/src/tab16receive~.d.21913 |  0
 externals/iem16/src/tab16receive~.d.23164 |  0
 externals/iem16/src/tab16receive~.d.23596 |  0
 externals/iem16/src/tab16receive~.d.23725 |  0
 externals/iem16/src/tab16receive~.d.2378  |  0
 externals/iem16/src/tab16receive~.d.23863 |  0
 externals/iem16/src/tab16receive~.d.23920 |  0
 externals/iem16/src/tab16receive~.d.23938 |  0
 externals/iem16/src/tab16receive~.d.2396  |  0
 externals/iem16/src/tab16receive~.d.24118 |  0
 externals/iem16/src/tab16receive~.d.24343 |  0
 externals/iem16/src/tab16receive~.d.24445 |  0
 externals/iem16/src/tab16receive~.d.24777 |  0
 externals/iem16/src/tab16receive~.d.2488  |  0
 externals/iem16/src/tab16receive~.d.24919 |  0
 externals/iem16/src/tab16receive~.d.2502  |  0
 externals/iem16/src/tab16receive~.d.25858 |  0
 externals/iem16/src/tab16receive~.d.25916 |  0
 externals/iem16/src/tab16receive~.d.26252 |  0
 externals/iem16/src/tab16receive~.d.26325 |  0
 externals/iem16/src/tab16receive~.d.27071 |  0
 externals/iem16/src/tab16receive~.d.27199 |  0
 externals/iem16/src/tab16receive~.d.27559 |  0
 externals/iem16/src/tab16receive~.d.27631 |  0
 externals/iem16/src/tab16receive~.d.27637 |  0
 externals/iem16/src/tab16receive~.d.27654 |  0
 externals/iem16/src/tab16receive~.d.27900 |  0
 externals/iem16/src/tab16receive~.d.27902 |  0
 externals/iem16/src/tab16receive~.d.27968 |  0
 externals/iem16/src/tab16receive~.d.28331 |  0
 externals/iem16/src/tab16receive~.d.2834  |  0
 externals/iem16/src/tab16receive~.d.2838  |  0
 externals/iem16/src/tab16receive~.d.28481 |  0
 externals/iem16/src/tab16receive~.d.28585 |  0
 externals/iem16/src/tab16receive~.d.28652 |  0
 externals/iem16/src/tab16receive~.d.28927 |  0
 externals/iem16/src/tab16receive~.d.28937 |  0
 externals/iem16/src/tab16receive~.d.29503 |  0
 externals/iem16/src/tab16receive~.d.29518 |  0
 externals/iem16/src/tab16receive~.d.2967  |  0
 externals/iem16/src/tab16receive~.d.29956 |  0
 externals/iem16/src/tab16receive~.d.30215 |  0
 externals/iem16/src/tab16receive~.d.30743 |  0
 externals/iem16/src/tab16receive~.d.30863 |  0
 externals/iem16/src/tab16receive~.d.30916 |  0
 externals/iem16/src/tab16receive~.d.31031 |  0
 externals/iem16/src/tab16receive~.d.31122 |  0
 externals/iem16/src/tab16receive~.d.31773 |  0
 externals/iem16/src/tab16receive~.d.31842 |  0
 externals/iem16/src/tab16receive~.d.3200  |  0
 externals/iem16/src/tab16receive~.d.32042 |  0
 externals/iem16/src/tab16receive~.d.32316 |  0
 externals/iem16/src/tab16receive~.d.32378 |  0
 externals/iem16/src/tab16receive~.d.32419 |  0
 externals/iem16/src/tab16receive~.d.32499 |  0
 externals/iem16/src/tab16receive~.d.32551 |  0
 externals/iem16/src/tab16receive~.d.32608 |  0
 externals/iem16/src/tab16receive~.d.3382  |  0
 externals/iem16/src/tab16receive~.d.4121  |  0
 externals/iem16/src/tab16receive~.d.4437  |  0
 externals/iem16/src/tab16receive~.d.489   |  0
 externals/iem16/src/tab16receive~.d.5023  |  0
 externals/iem16/src/tab16receive~.d.5167  |  0
 externals/iem16/src/tab16receive~.d.5691  |  0
 externals/iem16/src/tab16receive~.d.6320  |  0
 externals/iem16/src/tab16receive~.d.6604  |  0
 externals/iem16/src/tab16receive~.d.6773  |  0
 externals/iem16/src/tab16receive~.d.6815  |  0
 externals/iem16/src/tab16receive~.d.6827  |  0
 externals/iem16/src/tab16receive~.d.7408  |  0
 externals/iem16/src/tab16receive~.d.798   |  0
 externals/iem16/src/tab16receive~.d.8369  |  0
 externals/iem16/src/tab16receive~.d.8370  |  0
 externals/iem16/src/tab16receive~.d.8429  |  0
 externals/iem16/src/tab16receive~.d.8609  |  0
 externals/iem16/src/tab16receive~.d.8703  |  0
 externals/iem16/src/tab16receive~.d.8789  |  0
 externals/iem16/src/tab16receive~.d.9026  |  0
 externals/iem16/src/tab16receive~.d.9105  |  0
 externals/iem16/src/tab16receive~.d.9757  |  0
 externals/iem16/src/tab16send~.d.10304    |  0
 externals/iem16/src/tab16send~.d.10444    |  0
 externals/iem16/src/tab16send~.d.10793    |  0
 externals/iem16/src/tab16send~.d.11218    |  0
 externals/iem16/src/tab16send~.d.11243    |  0
 externals/iem16/src/tab16send~.d.11585    |  0
 externals/iem16/src/tab16send~.d.11932    |  0
 externals/iem16/src/tab16send~.d.12024    |  0
 externals/iem16/src/tab16send~.d.12164    |  0
 externals/iem16/src/tab16send~.d.12442    |  0
 externals/iem16/src/tab16send~.d.12651    |  0
 externals/iem16/src/tab16send~.d.12666    |  0
 externals/iem16/src/tab16send~.d.12805    |  0
 externals/iem16/src/tab16send~.d.1286     |  0
 externals/iem16/src/tab16send~.d.13075    |  0
 externals/iem16/src/tab16send~.d.13131    |  0
 externals/iem16/src/tab16send~.d.13166    |  0
 externals/iem16/src/tab16send~.d.13687    |  0
 externals/iem16/src/tab16send~.d.13955    |  0
 externals/iem16/src/tab16send~.d.14172    |  0
 externals/iem16/src/tab16send~.d.14377    |  0
 externals/iem16/src/tab16send~.d.14577    |  0
 externals/iem16/src/tab16send~.d.14729    |  0
 externals/iem16/src/tab16send~.d.14751    |  0
 externals/iem16/src/tab16send~.d.14832    |  0
 externals/iem16/src/tab16send~.d.15262    |  0
 externals/iem16/src/tab16send~.d.15414    |  0
 externals/iem16/src/tab16send~.d.1544     |  0
 externals/iem16/src/tab16send~.d.15449    |  0
 externals/iem16/src/tab16send~.d.15480    |  0
 externals/iem16/src/tab16send~.d.15578    |  0
 externals/iem16/src/tab16send~.d.15739    |  0
 externals/iem16/src/tab16send~.d.1577     |  0
 externals/iem16/src/tab16send~.d.16812    |  0
 externals/iem16/src/tab16send~.d.16884    |  0
 externals/iem16/src/tab16send~.d.17548    |  0
 externals/iem16/src/tab16send~.d.17584    |  0
 externals/iem16/src/tab16send~.d.17586    |  0
 externals/iem16/src/tab16send~.d.17634    |  0
 externals/iem16/src/tab16send~.d.17753    |  0
 externals/iem16/src/tab16send~.d.17802    |  0
 externals/iem16/src/tab16send~.d.1783     |  0
 externals/iem16/src/tab16send~.d.18158    |  0
 externals/iem16/src/tab16send~.d.18582    |  0
 externals/iem16/src/tab16send~.d.19527    |  0
 externals/iem16/src/tab16send~.d.19755    |  0
 externals/iem16/src/tab16send~.d.19980    |  0
 externals/iem16/src/tab16send~.d.20540    |  0
 externals/iem16/src/tab16send~.d.20756    |  0
 externals/iem16/src/tab16send~.d.20865    |  0
 externals/iem16/src/tab16send~.d.21257    |  0
 externals/iem16/src/tab16send~.d.21395    |  0
 externals/iem16/src/tab16send~.d.21574    |  0
 externals/iem16/src/tab16send~.d.21600    |  0
 externals/iem16/src/tab16send~.d.21610    |  0
 externals/iem16/src/tab16send~.d.21807    |  0
 externals/iem16/src/tab16send~.d.21834    |  0
 externals/iem16/src/tab16send~.d.21909    |  0
 externals/iem16/src/tab16send~.d.23160    |  0
 externals/iem16/src/tab16send~.d.23592    |  0
 externals/iem16/src/tab16send~.d.23721    |  0
 externals/iem16/src/tab16send~.d.2374     |  0
 externals/iem16/src/tab16send~.d.23859    |  0
 externals/iem16/src/tab16send~.d.23916    |  0
 externals/iem16/src/tab16send~.d.2392     |  0
 externals/iem16/src/tab16send~.d.23934    |  0
 externals/iem16/src/tab16send~.d.24114    |  0
 externals/iem16/src/tab16send~.d.24339    |  0
 externals/iem16/src/tab16send~.d.24441    |  0
 externals/iem16/src/tab16send~.d.24773    |  0
 externals/iem16/src/tab16send~.d.2484     |  0
 externals/iem16/src/tab16send~.d.24915    |  0
 externals/iem16/src/tab16send~.d.2498     |  0
 externals/iem16/src/tab16send~.d.25854    |  0
 externals/iem16/src/tab16send~.d.25912    |  0
 externals/iem16/src/tab16send~.d.26248    |  0
 externals/iem16/src/tab16send~.d.26321    |  0
 externals/iem16/src/tab16send~.d.27067    |  0
 externals/iem16/src/tab16send~.d.27195    |  0
 externals/iem16/src/tab16send~.d.27555    |  0
 externals/iem16/src/tab16send~.d.27627    |  0
 externals/iem16/src/tab16send~.d.27633    |  0
 externals/iem16/src/tab16send~.d.27650    |  0
 externals/iem16/src/tab16send~.d.27896    |  0
 externals/iem16/src/tab16send~.d.27898    |  0
 externals/iem16/src/tab16send~.d.27964    |  0
 externals/iem16/src/tab16send~.d.2830     |  0
 externals/iem16/src/tab16send~.d.28327    |  0
 externals/iem16/src/tab16send~.d.2834     |  0
 externals/iem16/src/tab16send~.d.28477    |  0
 externals/iem16/src/tab16send~.d.28581    |  0
 externals/iem16/src/tab16send~.d.28648    |  0
 externals/iem16/src/tab16send~.d.28923    |  0
 externals/iem16/src/tab16send~.d.28933    |  0
 externals/iem16/src/tab16send~.d.29498    |  0
 externals/iem16/src/tab16send~.d.29514    |  0
 externals/iem16/src/tab16send~.d.2963     |  0
 externals/iem16/src/tab16send~.d.29952    |  0
 externals/iem16/src/tab16send~.d.30211    |  0
 externals/iem16/src/tab16send~.d.30739    |  0
 externals/iem16/src/tab16send~.d.30859    |  0
 externals/iem16/src/tab16send~.d.30912    |  0
 externals/iem16/src/tab16send~.d.31027    |  0
 externals/iem16/src/tab16send~.d.31118    |  0
 externals/iem16/src/tab16send~.d.31769    |  0
 externals/iem16/src/tab16send~.d.31838    |  0
 externals/iem16/src/tab16send~.d.3196     |  0
 externals/iem16/src/tab16send~.d.32038    |  0
 externals/iem16/src/tab16send~.d.32312    |  0
 externals/iem16/src/tab16send~.d.32374    |  0
 externals/iem16/src/tab16send~.d.32415    |  0
 externals/iem16/src/tab16send~.d.32495    |  0
 externals/iem16/src/tab16send~.d.32547    |  0
 externals/iem16/src/tab16send~.d.32604    |  0
 externals/iem16/src/tab16send~.d.3378     |  0
 externals/iem16/src/tab16send~.d.4117     |  0
 externals/iem16/src/tab16send~.d.4433     |  0
 externals/iem16/src/tab16send~.d.485      |  0
 externals/iem16/src/tab16send~.d.5019     |  0
 externals/iem16/src/tab16send~.d.5163     |  0
 externals/iem16/src/tab16send~.d.5687     |  0
 externals/iem16/src/tab16send~.d.6316     |  0
 externals/iem16/src/tab16send~.d.6600     |  0
 externals/iem16/src/tab16send~.d.6769     |  0
 externals/iem16/src/tab16send~.d.6811     |  0
 externals/iem16/src/tab16send~.d.6823     |  0
 externals/iem16/src/tab16send~.d.7404     |  0
 externals/iem16/src/tab16send~.d.794      |  0
 externals/iem16/src/tab16send~.d.8365     |  0
 externals/iem16/src/tab16send~.d.8366     |  0
 externals/iem16/src/tab16send~.d.8425     |  0
 externals/iem16/src/tab16send~.d.8605     |  0
 externals/iem16/src/tab16send~.d.8699     |  0
 externals/iem16/src/tab16send~.d.8785     |  0
 externals/iem16/src/tab16send~.d.9022     |  0
 externals/iem16/src/tab16send~.d.9101     |  0
 externals/iem16/src/tab16send~.d.9753     |  0
 externals/iem16/src/tab16write.d.10300    |  0
 externals/iem16/src/tab16write.d.10440    |  0
 externals/iem16/src/tab16write.d.10789    |  0
 externals/iem16/src/tab16write.d.11214    |  0
 externals/iem16/src/tab16write.d.11239    |  0
 externals/iem16/src/tab16write.d.11581    |  0
 externals/iem16/src/tab16write.d.11928    |  0
 externals/iem16/src/tab16write.d.12020    |  0
 externals/iem16/src/tab16write.d.12160    |  0
 externals/iem16/src/tab16write.d.12438    |  0
 externals/iem16/src/tab16write.d.12647    |  0
 externals/iem16/src/tab16write.d.12662    |  0
 externals/iem16/src/tab16write.d.1268     |  0
 externals/iem16/src/tab16write.d.12801    |  0
 externals/iem16/src/tab16write.d.13071    |  0
 externals/iem16/src/tab16write.d.13127    |  0
 externals/iem16/src/tab16write.d.13162    |  0
 externals/iem16/src/tab16write.d.13683    |  0
 externals/iem16/src/tab16write.d.13951    |  0
 externals/iem16/src/tab16write.d.14168    |  0
 externals/iem16/src/tab16write.d.14373    |  0
 externals/iem16/src/tab16write.d.14573    |  0
 externals/iem16/src/tab16write.d.14725    |  0
 externals/iem16/src/tab16write.d.14747    |  0
 externals/iem16/src/tab16write.d.14828    |  0
 externals/iem16/src/tab16write.d.15258    |  0
 externals/iem16/src/tab16write.d.1540     |  0
 externals/iem16/src/tab16write.d.15410    |  0
 externals/iem16/src/tab16write.d.15445    |  0
 externals/iem16/src/tab16write.d.15476    |  0
 externals/iem16/src/tab16write.d.15574    |  0
 externals/iem16/src/tab16write.d.1573     |  0
 externals/iem16/src/tab16write.d.15735    |  0
 externals/iem16/src/tab16write.d.16808    |  0
 externals/iem16/src/tab16write.d.16880    |  0
 externals/iem16/src/tab16write.d.17544    |  0
 externals/iem16/src/tab16write.d.17580    |  0
 externals/iem16/src/tab16write.d.17582    |  0
 externals/iem16/src/tab16write.d.17630    |  0
 externals/iem16/src/tab16write.d.17749    |  0
 externals/iem16/src/tab16write.d.1779     |  0
 externals/iem16/src/tab16write.d.17798    |  0
 externals/iem16/src/tab16write.d.18154    |  0
 externals/iem16/src/tab16write.d.18578    |  0
 externals/iem16/src/tab16write.d.19523    |  0
 externals/iem16/src/tab16write.d.19751    |  0
 externals/iem16/src/tab16write.d.19976    |  0
 externals/iem16/src/tab16write.d.20536    |  0
 externals/iem16/src/tab16write.d.20752    |  0
 externals/iem16/src/tab16write.d.20861    |  0
 externals/iem16/src/tab16write.d.21253    |  0
 externals/iem16/src/tab16write.d.21391    |  0
 externals/iem16/src/tab16write.d.21570    |  0
 externals/iem16/src/tab16write.d.21596    |  0
 externals/iem16/src/tab16write.d.21606    |  0
 externals/iem16/src/tab16write.d.21803    |  0
 externals/iem16/src/tab16write.d.21830    |  0
 externals/iem16/src/tab16write.d.21905    |  0
 externals/iem16/src/tab16write.d.23156    |  0
 externals/iem16/src/tab16write.d.23588    |  0
 externals/iem16/src/tab16write.d.2370     |  0
 externals/iem16/src/tab16write.d.23717    |  0
 externals/iem16/src/tab16write.d.23855    |  0
 externals/iem16/src/tab16write.d.2388     |  0
 externals/iem16/src/tab16write.d.23912    |  0
 externals/iem16/src/tab16write.d.23930    |  0
 externals/iem16/src/tab16write.d.24107    |  0
 externals/iem16/src/tab16write.d.24335    |  0
 externals/iem16/src/tab16write.d.24437    |  0
 externals/iem16/src/tab16write.d.24769    |  0
 externals/iem16/src/tab16write.d.2480     |  0
 externals/iem16/src/tab16write.d.24911    |  0
 externals/iem16/src/tab16write.d.2494     |  0
 externals/iem16/src/tab16write.d.25908    |  0
 externals/iem16/src/tab16write.d.26244    |  0
 externals/iem16/src/tab16write.d.26317    |  0
 externals/iem16/src/tab16write.d.27063    |  0
 externals/iem16/src/tab16write.d.27191    |  0
 externals/iem16/src/tab16write.d.27551    |  0
 externals/iem16/src/tab16write.d.27623    |  0
 externals/iem16/src/tab16write.d.27629    |  0
 externals/iem16/src/tab16write.d.27646    |  0
 externals/iem16/src/tab16write.d.27892    |  0
 externals/iem16/src/tab16write.d.27894    |  0
 externals/iem16/src/tab16write.d.27960    |  0
 externals/iem16/src/tab16write.d.2826     |  0
 externals/iem16/src/tab16write.d.2830     |  0
 externals/iem16/src/tab16write.d.28323    |  0
 externals/iem16/src/tab16write.d.28473    |  0
 externals/iem16/src/tab16write.d.28577    |  0
 externals/iem16/src/tab16write.d.28644    |  0
 externals/iem16/src/tab16write.d.28919    |  0
 externals/iem16/src/tab16write.d.28929    |  0
 externals/iem16/src/tab16write.d.29494    |  0
 externals/iem16/src/tab16write.d.29510    |  0
 externals/iem16/src/tab16write.d.2959     |  0
 externals/iem16/src/tab16write.d.29948    |  0
 externals/iem16/src/tab16write.d.30207    |  0
 externals/iem16/src/tab16write.d.30735    |  0
 externals/iem16/src/tab16write.d.30855    |  0
 externals/iem16/src/tab16write.d.30908    |  0
 externals/iem16/src/tab16write.d.31023    |  0
 externals/iem16/src/tab16write.d.31114    |  0
 externals/iem16/src/tab16write.d.31765    |  0
 externals/iem16/src/tab16write.d.31834    |  0
 externals/iem16/src/tab16write.d.3191     |  0
 externals/iem16/src/tab16write.d.32034    |  0
 externals/iem16/src/tab16write.d.32308    |  0
 externals/iem16/src/tab16write.d.32370    |  0
 externals/iem16/src/tab16write.d.32411    |  0
 externals/iem16/src/tab16write.d.32491    |  0
 externals/iem16/src/tab16write.d.32543    |  0
 externals/iem16/src/tab16write.d.32600    |  0
 externals/iem16/src/tab16write.d.3374     |  0
 externals/iem16/src/tab16write.d.4113     |  0
 externals/iem16/src/tab16write.d.4429     |  0
 externals/iem16/src/tab16write.d.481      |  0
 externals/iem16/src/tab16write.d.5015     |  0
 externals/iem16/src/tab16write.d.5159     |  0
 externals/iem16/src/tab16write.d.5683     |  0
 externals/iem16/src/tab16write.d.6312     |  0
 externals/iem16/src/tab16write.d.6596     |  0
 externals/iem16/src/tab16write.d.6765     |  0
 externals/iem16/src/tab16write.d.6807     |  0
 externals/iem16/src/tab16write.d.6819     |  0
 externals/iem16/src/tab16write.d.7400     |  0
 externals/iem16/src/tab16write.d.790      |  0
 externals/iem16/src/tab16write.d.8361     |  0
 externals/iem16/src/tab16write.d.8362     |  0
 externals/iem16/src/tab16write.d.8421     |  0
 externals/iem16/src/tab16write.d.8601     |  0
 externals/iem16/src/tab16write.d.8695     |  0
 externals/iem16/src/tab16write.d.8781     |  0
 externals/iem16/src/tab16write.d.9018     |  0
 externals/iem16/src/tab16write.d.9097     |  0
 externals/iem16/src/tab16write.d.9749     |  0
 externals/iem16/src/tab16write~.d.10296   |  0
 externals/iem16/src/tab16write~.d.10436   |  0
 externals/iem16/src/tab16write~.d.10785   |  0
 externals/iem16/src/tab16write~.d.11210   |  0
 externals/iem16/src/tab16write~.d.11235   |  0
 externals/iem16/src/tab16write~.d.11577   |  0
 externals/iem16/src/tab16write~.d.11924   |  0
 externals/iem16/src/tab16write~.d.12016   |  0
 externals/iem16/src/tab16write~.d.12156   |  0
 externals/iem16/src/tab16write~.d.12434   |  0
 externals/iem16/src/tab16write~.d.1249    |  0
 externals/iem16/src/tab16write~.d.12643   |  0
 externals/iem16/src/tab16write~.d.12658   |  0
 externals/iem16/src/tab16write~.d.12797   |  0
 externals/iem16/src/tab16write~.d.13067   |  0
 externals/iem16/src/tab16write~.d.13123   |  0
 externals/iem16/src/tab16write~.d.13158   |  0
 externals/iem16/src/tab16write~.d.13679   |  0
 externals/iem16/src/tab16write~.d.13947   |  0
 externals/iem16/src/tab16write~.d.14164   |  0
 externals/iem16/src/tab16write~.d.14369   |  0
 externals/iem16/src/tab16write~.d.14569   |  0
 externals/iem16/src/tab16write~.d.14721   |  0
 externals/iem16/src/tab16write~.d.14743   |  0
 externals/iem16/src/tab16write~.d.14824   |  0
 externals/iem16/src/tab16write~.d.15254   |  0
 externals/iem16/src/tab16write~.d.1536    |  0
 externals/iem16/src/tab16write~.d.15406   |  0
 externals/iem16/src/tab16write~.d.15441   |  0
 externals/iem16/src/tab16write~.d.15472   |  0
 externals/iem16/src/tab16write~.d.15570   |  0
 externals/iem16/src/tab16write~.d.1569    |  0
 externals/iem16/src/tab16write~.d.15731   |  0
 externals/iem16/src/tab16write~.d.16804   |  0
 externals/iem16/src/tab16write~.d.16876   |  0
 externals/iem16/src/tab16write~.d.17540   |  0
 externals/iem16/src/tab16write~.d.17576   |  0
 externals/iem16/src/tab16write~.d.17578   |  0
 externals/iem16/src/tab16write~.d.17626   |  0
 externals/iem16/src/tab16write~.d.17745   |  0
 externals/iem16/src/tab16write~.d.1775    |  0
 externals/iem16/src/tab16write~.d.17794   |  0
 externals/iem16/src/tab16write~.d.18150   |  0
 externals/iem16/src/tab16write~.d.18574   |  0
 externals/iem16/src/tab16write~.d.19519   |  0
 externals/iem16/src/tab16write~.d.19747   |  0
 externals/iem16/src/tab16write~.d.19972   |  0
 externals/iem16/src/tab16write~.d.20532   |  0
 externals/iem16/src/tab16write~.d.20748   |  0
 externals/iem16/src/tab16write~.d.20857   |  0
 externals/iem16/src/tab16write~.d.21249   |  0
 externals/iem16/src/tab16write~.d.21387   |  0
 externals/iem16/src/tab16write~.d.21566   |  0
 externals/iem16/src/tab16write~.d.21592   |  0
 externals/iem16/src/tab16write~.d.21602   |  0
 externals/iem16/src/tab16write~.d.21799   |  0
 externals/iem16/src/tab16write~.d.21826   |  0
 externals/iem16/src/tab16write~.d.21901   |  0
 externals/iem16/src/tab16write~.d.23152   |  0
 externals/iem16/src/tab16write~.d.23584   |  0
 externals/iem16/src/tab16write~.d.2366    |  0
 externals/iem16/src/tab16write~.d.23713   |  0
 externals/iem16/src/tab16write~.d.2384    |  0
 externals/iem16/src/tab16write~.d.23851   |  0
 externals/iem16/src/tab16write~.d.23908   |  0
 externals/iem16/src/tab16write~.d.23926   |  0
 externals/iem16/src/tab16write~.d.24103   |  0
 externals/iem16/src/tab16write~.d.24331   |  0
 externals/iem16/src/tab16write~.d.24433   |  0
 externals/iem16/src/tab16write~.d.2476    |  0
 externals/iem16/src/tab16write~.d.24765   |  0
 externals/iem16/src/tab16write~.d.2490    |  0
 externals/iem16/src/tab16write~.d.24907   |  0
 externals/iem16/src/tab16write~.d.25846   |  0
 externals/iem16/src/tab16write~.d.25904   |  0
 externals/iem16/src/tab16write~.d.26240   |  0
 externals/iem16/src/tab16write~.d.26313   |  0
 externals/iem16/src/tab16write~.d.27059   |  0
 externals/iem16/src/tab16write~.d.27187   |  0
 externals/iem16/src/tab16write~.d.27547   |  0
 externals/iem16/src/tab16write~.d.27619   |  0
 externals/iem16/src/tab16write~.d.27625   |  0
 externals/iem16/src/tab16write~.d.27642   |  0
 externals/iem16/src/tab16write~.d.27888   |  0
 externals/iem16/src/tab16write~.d.27890   |  0
 externals/iem16/src/tab16write~.d.27956   |  0
 externals/iem16/src/tab16write~.d.2822    |  0
 externals/iem16/src/tab16write~.d.2826    |  0
 externals/iem16/src/tab16write~.d.28319   |  0
 externals/iem16/src/tab16write~.d.28469   |  0
 externals/iem16/src/tab16write~.d.28573   |  0
 externals/iem16/src/tab16write~.d.28640   |  0
 externals/iem16/src/tab16write~.d.28915   |  0
 externals/iem16/src/tab16write~.d.28925   |  0
 externals/iem16/src/tab16write~.d.29490   |  0
 externals/iem16/src/tab16write~.d.29506   |  0
 externals/iem16/src/tab16write~.d.2955    |  0
 externals/iem16/src/tab16write~.d.29944   |  0
 externals/iem16/src/tab16write~.d.30203   |  0
 externals/iem16/src/tab16write~.d.30731   |  0
 externals/iem16/src/tab16write~.d.30851   |  0
 externals/iem16/src/tab16write~.d.30904   |  0
 externals/iem16/src/tab16write~.d.31019   |  0
 externals/iem16/src/tab16write~.d.31110   |  0
 externals/iem16/src/tab16write~.d.31761   |  0
 externals/iem16/src/tab16write~.d.31830   |  0
 externals/iem16/src/tab16write~.d.3187    |  0
 externals/iem16/src/tab16write~.d.32030   |  0
 externals/iem16/src/tab16write~.d.32304   |  0
 externals/iem16/src/tab16write~.d.32366   |  0
 externals/iem16/src/tab16write~.d.32407   |  0
 externals/iem16/src/tab16write~.d.32487   |  0
 externals/iem16/src/tab16write~.d.32539   |  0
 externals/iem16/src/tab16write~.d.32596   |  0
 externals/iem16/src/tab16write~.d.3370    |  0
 externals/iem16/src/tab16write~.d.4109    |  0
 externals/iem16/src/tab16write~.d.4425    |  0
 externals/iem16/src/tab16write~.d.477     |  0
 externals/iem16/src/tab16write~.d.5011    |  0
 externals/iem16/src/tab16write~.d.5155    |  0
 externals/iem16/src/tab16write~.d.5679    |  0
 externals/iem16/src/tab16write~.d.6308    |  0
 externals/iem16/src/tab16write~.d.6592    |  0
 externals/iem16/src/tab16write~.d.6761    |  0
 externals/iem16/src/tab16write~.d.6803    |  0
 externals/iem16/src/tab16write~.d.6815    |  0
 externals/iem16/src/tab16write~.d.7396    |  0
 externals/iem16/src/tab16write~.d.786     |  0
 externals/iem16/src/tab16write~.d.8357    |  0
 externals/iem16/src/tab16write~.d.8358    |  0
 externals/iem16/src/tab16write~.d.8417    |  0
 externals/iem16/src/tab16write~.d.8597    |  0
 externals/iem16/src/tab16write~.d.8691    |  0
 externals/iem16/src/tab16write~.d.8777    |  0
 externals/iem16/src/tab16write~.d.9014    |  0
 externals/iem16/src/tab16write~.d.9093    |  0
 externals/iem16/src/tab16write~.d.9745    |  0
 externals/iem16/src/table16.d.10292       |  0
 externals/iem16/src/table16.d.10432       |  0
 externals/iem16/src/table16.d.10781       |  0
 externals/iem16/src/table16.d.11206       |  0
 externals/iem16/src/table16.d.11231       |  0
 externals/iem16/src/table16.d.11573       |  0
 externals/iem16/src/table16.d.11920       |  0
 externals/iem16/src/table16.d.12012       |  0
 externals/iem16/src/table16.d.12152       |  0
 externals/iem16/src/table16.d.1233        |  0
 externals/iem16/src/table16.d.12430       |  0
 externals/iem16/src/table16.d.12639       |  0
 externals/iem16/src/table16.d.12654       |  0
 externals/iem16/src/table16.d.12793       |  0
 externals/iem16/src/table16.d.13063       |  0
 externals/iem16/src/table16.d.13119       |  0
 externals/iem16/src/table16.d.13154       |  0
 externals/iem16/src/table16.d.13675       |  0
 externals/iem16/src/table16.d.13943       |  0
 externals/iem16/src/table16.d.14160       |  0
 externals/iem16/src/table16.d.14365       |  0
 externals/iem16/src/table16.d.14565       |  0
 externals/iem16/src/table16.d.14717       |  0
 externals/iem16/src/table16.d.14739       |  0
 externals/iem16/src/table16.d.14820       |  0
 externals/iem16/src/table16.d.15250       |  0
 externals/iem16/src/table16.d.1532        |  0
 externals/iem16/src/table16.d.15402       |  0
 externals/iem16/src/table16.d.15437       |  0
 externals/iem16/src/table16.d.15468       |  0
 externals/iem16/src/table16.d.15566       |  0
 externals/iem16/src/table16.d.1565        |  0
 externals/iem16/src/table16.d.15727       |  0
 externals/iem16/src/table16.d.16800       |  0
 externals/iem16/src/table16.d.16872       |  0
 externals/iem16/src/table16.d.17536       |  0
 externals/iem16/src/table16.d.17572       |  0
 externals/iem16/src/table16.d.17574       |  0
 externals/iem16/src/table16.d.17622       |  0
 externals/iem16/src/table16.d.1770        |  0
 externals/iem16/src/table16.d.17741       |  0
 externals/iem16/src/table16.d.17790       |  0
 externals/iem16/src/table16.d.18146       |  0
 externals/iem16/src/table16.d.18570       |  0
 externals/iem16/src/table16.d.19515       |  0
 externals/iem16/src/table16.d.19743       |  0
 externals/iem16/src/table16.d.19968       |  0
 externals/iem16/src/table16.d.20528       |  0
 externals/iem16/src/table16.d.20744       |  0
 externals/iem16/src/table16.d.20853       |  0
 externals/iem16/src/table16.d.21245       |  0
 externals/iem16/src/table16.d.21383       |  0
 externals/iem16/src/table16.d.21562       |  0
 externals/iem16/src/table16.d.21588       |  0
 externals/iem16/src/table16.d.21598       |  0
 externals/iem16/src/table16.d.21795       |  0
 externals/iem16/src/table16.d.21822       |  0
 externals/iem16/src/table16.d.21897       |  0
 externals/iem16/src/table16.d.23148       |  0
 externals/iem16/src/table16.d.23580       |  0
 externals/iem16/src/table16.d.2362        |  0
 externals/iem16/src/table16.d.23709       |  0
 externals/iem16/src/table16.d.2380        |  0
 externals/iem16/src/table16.d.23847       |  0
 externals/iem16/src/table16.d.23904       |  0
 externals/iem16/src/table16.d.23922       |  0
 externals/iem16/src/table16.d.24099       |  0
 externals/iem16/src/table16.d.24327       |  0
 externals/iem16/src/table16.d.24429       |  0
 externals/iem16/src/table16.d.2472        |  0
 externals/iem16/src/table16.d.24761       |  0
 externals/iem16/src/table16.d.2486        |  0
 externals/iem16/src/table16.d.24903       |  0
 externals/iem16/src/table16.d.25842       |  0
 externals/iem16/src/table16.d.25900       |  0
 externals/iem16/src/table16.d.26236       |  0
 externals/iem16/src/table16.d.26309       |  0
 externals/iem16/src/table16.d.27055       |  0
 externals/iem16/src/table16.d.27183       |  0
 externals/iem16/src/table16.d.27543       |  0
 externals/iem16/src/table16.d.27615       |  0
 externals/iem16/src/table16.d.27621       |  0
 externals/iem16/src/table16.d.27638       |  0
 externals/iem16/src/table16.d.27884       |  0
 externals/iem16/src/table16.d.27886       |  0
 externals/iem16/src/table16.d.27952       |  0
 externals/iem16/src/table16.d.2818        |  0
 externals/iem16/src/table16.d.2822        |  0
 externals/iem16/src/table16.d.28315       |  0
 externals/iem16/src/table16.d.28465       |  0
 externals/iem16/src/table16.d.28569       |  0
 externals/iem16/src/table16.d.28636       |  0
 externals/iem16/src/table16.d.28911       |  0
 externals/iem16/src/table16.d.28921       |  0
 externals/iem16/src/table16.d.29486       |  0
 externals/iem16/src/table16.d.29502       |  0
 externals/iem16/src/table16.d.2951        |  0
 externals/iem16/src/table16.d.29940       |  0
 externals/iem16/src/table16.d.30199       |  0
 externals/iem16/src/table16.d.30727       |  0
 externals/iem16/src/table16.d.30847       |  0
 externals/iem16/src/table16.d.30900       |  0
 externals/iem16/src/table16.d.31015       |  0
 externals/iem16/src/table16.d.31106       |  0
 externals/iem16/src/table16.d.31757       |  0
 externals/iem16/src/table16.d.31826       |  0
 externals/iem16/src/table16.d.3183        |  0
 externals/iem16/src/table16.d.32026       |  0
 externals/iem16/src/table16.d.32300       |  0
 externals/iem16/src/table16.d.32362       |  0
 externals/iem16/src/table16.d.32403       |  0
 externals/iem16/src/table16.d.32483       |  0
 externals/iem16/src/table16.d.32535       |  0
 externals/iem16/src/table16.d.32592       |  0
 externals/iem16/src/table16.d.3366        |  0
 externals/iem16/src/table16.d.4105        |  0
 externals/iem16/src/table16.d.473         |  0
 externals/iem16/src/table16.d.5007        |  0
 externals/iem16/src/table16.d.5151        |  0
 externals/iem16/src/table16.d.5675        |  0
 externals/iem16/src/table16.d.6304        |  0
 externals/iem16/src/table16.d.6588        |  0
 externals/iem16/src/table16.d.6757        |  0
 externals/iem16/src/table16.d.6799        |  0
 externals/iem16/src/table16.d.6811        |  0
 externals/iem16/src/table16.d.7392        |  0
 externals/iem16/src/table16.d.782         |  0
 externals/iem16/src/table16.d.8353        |  0
 externals/iem16/src/table16.d.8354        |  0
 externals/iem16/src/table16.d.8413        |  0
 externals/iem16/src/table16.d.8593        |  0
 externals/iem16/src/table16.d.8687        |  0
 externals/iem16/src/table16.d.8773        |  0
 externals/iem16/src/table16.d.9010        |  0
 externals/iem16/src/table16.d.9089        |  0
 externals/iem16/src/table16.d.9741        |  0
 externals/iem16/src/vd16~.d.10288         |  0
 externals/iem16/src/vd16~.d.10428         |  0
 externals/iem16/src/vd16~.d.10777         |  0
 externals/iem16/src/vd16~.d.11202         |  0
 externals/iem16/src/vd16~.d.11227         |  0
 externals/iem16/src/vd16~.d.11569         |  0
 externals/iem16/src/vd16~.d.11916         |  0
 externals/iem16/src/vd16~.d.12008         |  0
 externals/iem16/src/vd16~.d.12148         |  0
 externals/iem16/src/vd16~.d.1223          |  0
 externals/iem16/src/vd16~.d.12426         |  0
 externals/iem16/src/vd16~.d.12635         |  0
 externals/iem16/src/vd16~.d.12650         |  0
 externals/iem16/src/vd16~.d.12789         |  0
 externals/iem16/src/vd16~.d.13059         |  0
 externals/iem16/src/vd16~.d.13115         |  0
 externals/iem16/src/vd16~.d.13150         |  0
 externals/iem16/src/vd16~.d.13671         |  0
 externals/iem16/src/vd16~.d.13939         |  0
 externals/iem16/src/vd16~.d.14156         |  0
 externals/iem16/src/vd16~.d.14361         |  0
 externals/iem16/src/vd16~.d.14561         |  0
 externals/iem16/src/vd16~.d.14713         |  0
 externals/iem16/src/vd16~.d.14735         |  0
 externals/iem16/src/vd16~.d.14816         |  0
 externals/iem16/src/vd16~.d.15246         |  0
 externals/iem16/src/vd16~.d.1528          |  0
 externals/iem16/src/vd16~.d.15398         |  0
 externals/iem16/src/vd16~.d.15433         |  0
 externals/iem16/src/vd16~.d.15464         |  0
 externals/iem16/src/vd16~.d.15562         |  0
 externals/iem16/src/vd16~.d.1561          |  0
 externals/iem16/src/vd16~.d.15723         |  0
 externals/iem16/src/vd16~.d.16796         |  0
 externals/iem16/src/vd16~.d.16868         |  0
 externals/iem16/src/vd16~.d.17532         |  0
 externals/iem16/src/vd16~.d.17568         |  0
 externals/iem16/src/vd16~.d.17570         |  0
 externals/iem16/src/vd16~.d.17618         |  0
 externals/iem16/src/vd16~.d.1766          |  0
 externals/iem16/src/vd16~.d.17737         |  0
 externals/iem16/src/vd16~.d.17786         |  0
 externals/iem16/src/vd16~.d.18142         |  0
 externals/iem16/src/vd16~.d.18566         |  0
 externals/iem16/src/vd16~.d.19511         |  0
 externals/iem16/src/vd16~.d.19739         |  0
 externals/iem16/src/vd16~.d.19964         |  0
 externals/iem16/src/vd16~.d.20524         |  0
 externals/iem16/src/vd16~.d.20740         |  0
 externals/iem16/src/vd16~.d.20849         |  0
 externals/iem16/src/vd16~.d.21241         |  0
 externals/iem16/src/vd16~.d.21379         |  0
 externals/iem16/src/vd16~.d.21558         |  0
 externals/iem16/src/vd16~.d.21584         |  0
 externals/iem16/src/vd16~.d.21594         |  0
 externals/iem16/src/vd16~.d.21791         |  0
 externals/iem16/src/vd16~.d.21818         |  0
 externals/iem16/src/vd16~.d.21893         |  0
 externals/iem16/src/vd16~.d.23144         |  0
 externals/iem16/src/vd16~.d.23576         |  0
 externals/iem16/src/vd16~.d.2358          |  0
 externals/iem16/src/vd16~.d.23705         |  0
 externals/iem16/src/vd16~.d.2376          |  0
 externals/iem16/src/vd16~.d.23843         |  0
 externals/iem16/src/vd16~.d.23900         |  0
 externals/iem16/src/vd16~.d.23918         |  0
 externals/iem16/src/vd16~.d.24095         |  0
 externals/iem16/src/vd16~.d.24323         |  0
 externals/iem16/src/vd16~.d.24425         |  0
 externals/iem16/src/vd16~.d.2467          |  0
 externals/iem16/src/vd16~.d.24757         |  0
 externals/iem16/src/vd16~.d.2482          |  0
 externals/iem16/src/vd16~.d.24899         |  0
 externals/iem16/src/vd16~.d.25838         |  0
 externals/iem16/src/vd16~.d.25896         |  0
 externals/iem16/src/vd16~.d.26232         |  0
 externals/iem16/src/vd16~.d.26305         |  0
 externals/iem16/src/vd16~.d.27051         |  0
 externals/iem16/src/vd16~.d.27179         |  0
 externals/iem16/src/vd16~.d.27539         |  0
 externals/iem16/src/vd16~.d.27611         |  0
 externals/iem16/src/vd16~.d.27617         |  0
 externals/iem16/src/vd16~.d.27634         |  0
 externals/iem16/src/vd16~.d.27880         |  0
 externals/iem16/src/vd16~.d.27882         |  0
 externals/iem16/src/vd16~.d.27948         |  0
 externals/iem16/src/vd16~.d.2814          |  0
 externals/iem16/src/vd16~.d.2818          |  0
 externals/iem16/src/vd16~.d.28311         |  0
 externals/iem16/src/vd16~.d.28461         |  0
 externals/iem16/src/vd16~.d.28565         |  0
 externals/iem16/src/vd16~.d.28632         |  0
 externals/iem16/src/vd16~.d.28907         |  0
 externals/iem16/src/vd16~.d.28917         |  0
 externals/iem16/src/vd16~.d.2947          |  0
 externals/iem16/src/vd16~.d.29482         |  0
 externals/iem16/src/vd16~.d.29498         |  0
 externals/iem16/src/vd16~.d.29936         |  0
 externals/iem16/src/vd16~.d.30195         |  0
 externals/iem16/src/vd16~.d.30723         |  0
 externals/iem16/src/vd16~.d.30843         |  0
 externals/iem16/src/vd16~.d.30896         |  0
 externals/iem16/src/vd16~.d.31011         |  0
 externals/iem16/src/vd16~.d.31102         |  0
 externals/iem16/src/vd16~.d.31753         |  0
 externals/iem16/src/vd16~.d.3179          |  0
 externals/iem16/src/vd16~.d.31822         |  0
 externals/iem16/src/vd16~.d.32022         |  0
 externals/iem16/src/vd16~.d.32296         |  0
 externals/iem16/src/vd16~.d.32358         |  0
 externals/iem16/src/vd16~.d.32399         |  0
 externals/iem16/src/vd16~.d.32479         |  0
 externals/iem16/src/vd16~.d.32531         |  0
 externals/iem16/src/vd16~.d.32588         |  0
 externals/iem16/src/vd16~.d.3362          |  0
 externals/iem16/src/vd16~.d.4101          |  0
 externals/iem16/src/vd16~.d.4417          |  0
 externals/iem16/src/vd16~.d.469           |  0
 externals/iem16/src/vd16~.d.5003          |  0
 externals/iem16/src/vd16~.d.5147          |  0
 externals/iem16/src/vd16~.d.5671          |  0
 externals/iem16/src/vd16~.d.6300          |  0
 externals/iem16/src/vd16~.d.6584          |  0
 externals/iem16/src/vd16~.d.6753          |  0
 externals/iem16/src/vd16~.d.6795          |  0
 externals/iem16/src/vd16~.d.6807          |  0
 externals/iem16/src/vd16~.d.7388          |  0
 externals/iem16/src/vd16~.d.778           |  0
 externals/iem16/src/vd16~.d.8349          |  0
 externals/iem16/src/vd16~.d.8350          |  0
 externals/iem16/src/vd16~.d.8409          |  0
 externals/iem16/src/vd16~.d.8589          |  0
 externals/iem16/src/vd16~.d.8683          |  0
 externals/iem16/src/vd16~.d.8769          |  0
 externals/iem16/src/vd16~.d.9006          |  0
 externals/iem16/src/vd16~.d.9085          |  0
 externals/iem16/src/vd16~.d.9737          |  0
 1905 files changed, 51 deletions(-)
 delete mode 100644 externals/iem16/src/del16read~.d.10336
 delete mode 100644 externals/iem16/src/del16read~.d.10476
 delete mode 100644 externals/iem16/src/del16read~.d.10825
 delete mode 100644 externals/iem16/src/del16read~.d.11250
 delete mode 100644 externals/iem16/src/del16read~.d.11275
 delete mode 100644 externals/iem16/src/del16read~.d.11617
 delete mode 100644 externals/iem16/src/del16read~.d.11964
 delete mode 100644 externals/iem16/src/del16read~.d.12056
 delete mode 100644 externals/iem16/src/del16read~.d.12196
 delete mode 100644 externals/iem16/src/del16read~.d.12474
 delete mode 100644 externals/iem16/src/del16read~.d.12683
 delete mode 100644 externals/iem16/src/del16read~.d.12698
 delete mode 100644 externals/iem16/src/del16read~.d.12837
 delete mode 100644 externals/iem16/src/del16read~.d.13107
 delete mode 100644 externals/iem16/src/del16read~.d.13163
 delete mode 100644 externals/iem16/src/del16read~.d.13198
 delete mode 100644 externals/iem16/src/del16read~.d.13719
 delete mode 100644 externals/iem16/src/del16read~.d.1390
 delete mode 100644 externals/iem16/src/del16read~.d.13987
 delete mode 100644 externals/iem16/src/del16read~.d.14204
 delete mode 100644 externals/iem16/src/del16read~.d.14409
 delete mode 100644 externals/iem16/src/del16read~.d.14609
 delete mode 100644 externals/iem16/src/del16read~.d.14761
 delete mode 100644 externals/iem16/src/del16read~.d.14783
 delete mode 100644 externals/iem16/src/del16read~.d.14864
 delete mode 100644 externals/iem16/src/del16read~.d.15294
 delete mode 100644 externals/iem16/src/del16read~.d.15446
 delete mode 100644 externals/iem16/src/del16read~.d.15481
 delete mode 100644 externals/iem16/src/del16read~.d.15512
 delete mode 100644 externals/iem16/src/del16read~.d.15610
 delete mode 100644 externals/iem16/src/del16read~.d.1576
 delete mode 100644 externals/iem16/src/del16read~.d.15771
 delete mode 100644 externals/iem16/src/del16read~.d.1609
 delete mode 100644 externals/iem16/src/del16read~.d.16844
 delete mode 100644 externals/iem16/src/del16read~.d.16916
 delete mode 100644 externals/iem16/src/del16read~.d.17580
 delete mode 100644 externals/iem16/src/del16read~.d.17616
 delete mode 100644 externals/iem16/src/del16read~.d.17618
 delete mode 100644 externals/iem16/src/del16read~.d.17666
 delete mode 100644 externals/iem16/src/del16read~.d.17785
 delete mode 100644 externals/iem16/src/del16read~.d.17834
 delete mode 100644 externals/iem16/src/del16read~.d.1816
 delete mode 100644 externals/iem16/src/del16read~.d.18190
 delete mode 100644 externals/iem16/src/del16read~.d.18614
 delete mode 100644 externals/iem16/src/del16read~.d.19559
 delete mode 100644 externals/iem16/src/del16read~.d.19787
 delete mode 100644 externals/iem16/src/del16read~.d.20012
 delete mode 100644 externals/iem16/src/del16read~.d.20572
 delete mode 100644 externals/iem16/src/del16read~.d.20788
 delete mode 100644 externals/iem16/src/del16read~.d.20897
 delete mode 100644 externals/iem16/src/del16read~.d.21289
 delete mode 100644 externals/iem16/src/del16read~.d.21427
 delete mode 100644 externals/iem16/src/del16read~.d.21606
 delete mode 100644 externals/iem16/src/del16read~.d.21632
 delete mode 100644 externals/iem16/src/del16read~.d.21642
 delete mode 100644 externals/iem16/src/del16read~.d.21839
 delete mode 100644 externals/iem16/src/del16read~.d.21866
 delete mode 100644 externals/iem16/src/del16read~.d.21941
 delete mode 100644 externals/iem16/src/del16read~.d.23192
 delete mode 100644 externals/iem16/src/del16read~.d.23624
 delete mode 100644 externals/iem16/src/del16read~.d.23753
 delete mode 100644 externals/iem16/src/del16read~.d.23891
 delete mode 100644 externals/iem16/src/del16read~.d.23948
 delete mode 100644 externals/iem16/src/del16read~.d.23966
 delete mode 100644 externals/iem16/src/del16read~.d.2406
 delete mode 100644 externals/iem16/src/del16read~.d.24146
 delete mode 100644 externals/iem16/src/del16read~.d.2424
 delete mode 100644 externals/iem16/src/del16read~.d.24371
 delete mode 100644 externals/iem16/src/del16read~.d.24473
 delete mode 100644 externals/iem16/src/del16read~.d.24805
 delete mode 100644 externals/iem16/src/del16read~.d.24947
 delete mode 100644 externals/iem16/src/del16read~.d.2518
 delete mode 100644 externals/iem16/src/del16read~.d.2530
 delete mode 100644 externals/iem16/src/del16read~.d.25886
 delete mode 100644 externals/iem16/src/del16read~.d.25944
 delete mode 100644 externals/iem16/src/del16read~.d.26280
 delete mode 100644 externals/iem16/src/del16read~.d.26353
 delete mode 100644 externals/iem16/src/del16read~.d.27099
 delete mode 100644 externals/iem16/src/del16read~.d.27227
 delete mode 100644 externals/iem16/src/del16read~.d.27587
 delete mode 100644 externals/iem16/src/del16read~.d.27659
 delete mode 100644 externals/iem16/src/del16read~.d.27665
 delete mode 100644 externals/iem16/src/del16read~.d.27682
 delete mode 100644 externals/iem16/src/del16read~.d.27928
 delete mode 100644 externals/iem16/src/del16read~.d.27930
 delete mode 100644 externals/iem16/src/del16read~.d.27996
 delete mode 100644 externals/iem16/src/del16read~.d.28359
 delete mode 100644 externals/iem16/src/del16read~.d.28509
 delete mode 100644 externals/iem16/src/del16read~.d.28613
 delete mode 100644 externals/iem16/src/del16read~.d.2863
 delete mode 100644 externals/iem16/src/del16read~.d.2867
 delete mode 100644 externals/iem16/src/del16read~.d.28680
 delete mode 100644 externals/iem16/src/del16read~.d.28955
 delete mode 100644 externals/iem16/src/del16read~.d.28965
 delete mode 100644 externals/iem16/src/del16read~.d.29538
 delete mode 100644 externals/iem16/src/del16read~.d.29546
 delete mode 100644 externals/iem16/src/del16read~.d.2996
 delete mode 100644 externals/iem16/src/del16read~.d.29984
 delete mode 100644 externals/iem16/src/del16read~.d.30243
 delete mode 100644 externals/iem16/src/del16read~.d.30771
 delete mode 100644 externals/iem16/src/del16read~.d.30891
 delete mode 100644 externals/iem16/src/del16read~.d.30944
 delete mode 100644 externals/iem16/src/del16read~.d.31059
 delete mode 100644 externals/iem16/src/del16read~.d.31150
 delete mode 100644 externals/iem16/src/del16read~.d.31801
 delete mode 100644 externals/iem16/src/del16read~.d.31870
 delete mode 100644 externals/iem16/src/del16read~.d.32070
 delete mode 100644 externals/iem16/src/del16read~.d.32344
 delete mode 100644 externals/iem16/src/del16read~.d.32406
 delete mode 100644 externals/iem16/src/del16read~.d.32447
 delete mode 100644 externals/iem16/src/del16read~.d.3246
 delete mode 100644 externals/iem16/src/del16read~.d.32527
 delete mode 100644 externals/iem16/src/del16read~.d.32579
 delete mode 100644 externals/iem16/src/del16read~.d.32636
 delete mode 100644 externals/iem16/src/del16read~.d.3410
 delete mode 100644 externals/iem16/src/del16read~.d.4149
 delete mode 100644 externals/iem16/src/del16read~.d.4465
 delete mode 100644 externals/iem16/src/del16read~.d.5051
 delete mode 100644 externals/iem16/src/del16read~.d.517
 delete mode 100644 externals/iem16/src/del16read~.d.5195
 delete mode 100644 externals/iem16/src/del16read~.d.5719
 delete mode 100644 externals/iem16/src/del16read~.d.6348
 delete mode 100644 externals/iem16/src/del16read~.d.6632
 delete mode 100644 externals/iem16/src/del16read~.d.6801
 delete mode 100644 externals/iem16/src/del16read~.d.6843
 delete mode 100644 externals/iem16/src/del16read~.d.6855
 delete mode 100644 externals/iem16/src/del16read~.d.7436
 delete mode 100644 externals/iem16/src/del16read~.d.827
 delete mode 100644 externals/iem16/src/del16read~.d.8397
 delete mode 100644 externals/iem16/src/del16read~.d.8398
 delete mode 100644 externals/iem16/src/del16read~.d.8457
 delete mode 100644 externals/iem16/src/del16read~.d.8637
 delete mode 100644 externals/iem16/src/del16read~.d.8731
 delete mode 100644 externals/iem16/src/del16read~.d.8817
 delete mode 100644 externals/iem16/src/del16read~.d.9054
 delete mode 100644 externals/iem16/src/del16read~.d.9133
 delete mode 100644 externals/iem16/src/del16read~.d.9785
 delete mode 100644 externals/iem16/src/del16write~.d.10332
 delete mode 100644 externals/iem16/src/del16write~.d.10472
 delete mode 100644 externals/iem16/src/del16write~.d.10821
 delete mode 100644 externals/iem16/src/del16write~.d.11246
 delete mode 100644 externals/iem16/src/del16write~.d.11271
 delete mode 100644 externals/iem16/src/del16write~.d.11613
 delete mode 100644 externals/iem16/src/del16write~.d.11960
 delete mode 100644 externals/iem16/src/del16write~.d.12052
 delete mode 100644 externals/iem16/src/del16write~.d.12192
 delete mode 100644 externals/iem16/src/del16write~.d.12470
 delete mode 100644 externals/iem16/src/del16write~.d.12679
 delete mode 100644 externals/iem16/src/del16write~.d.12694
 delete mode 100644 externals/iem16/src/del16write~.d.12833
 delete mode 100644 externals/iem16/src/del16write~.d.13103
 delete mode 100644 externals/iem16/src/del16write~.d.13159
 delete mode 100644 externals/iem16/src/del16write~.d.13194
 delete mode 100644 externals/iem16/src/del16write~.d.13715
 delete mode 100644 externals/iem16/src/del16write~.d.1378
 delete mode 100644 externals/iem16/src/del16write~.d.13983
 delete mode 100644 externals/iem16/src/del16write~.d.14200
 delete mode 100644 externals/iem16/src/del16write~.d.14405
 delete mode 100644 externals/iem16/src/del16write~.d.14605
 delete mode 100644 externals/iem16/src/del16write~.d.14757
 delete mode 100644 externals/iem16/src/del16write~.d.14779
 delete mode 100644 externals/iem16/src/del16write~.d.14860
 delete mode 100644 externals/iem16/src/del16write~.d.15290
 delete mode 100644 externals/iem16/src/del16write~.d.15442
 delete mode 100644 externals/iem16/src/del16write~.d.15477
 delete mode 100644 externals/iem16/src/del16write~.d.15508
 delete mode 100644 externals/iem16/src/del16write~.d.15606
 delete mode 100644 externals/iem16/src/del16write~.d.1572
 delete mode 100644 externals/iem16/src/del16write~.d.15767
 delete mode 100644 externals/iem16/src/del16write~.d.1605
 delete mode 100644 externals/iem16/src/del16write~.d.16840
 delete mode 100644 externals/iem16/src/del16write~.d.16912
 delete mode 100644 externals/iem16/src/del16write~.d.17576
 delete mode 100644 externals/iem16/src/del16write~.d.17612
 delete mode 100644 externals/iem16/src/del16write~.d.17614
 delete mode 100644 externals/iem16/src/del16write~.d.17662
 delete mode 100644 externals/iem16/src/del16write~.d.17781
 delete mode 100644 externals/iem16/src/del16write~.d.17830
 delete mode 100644 externals/iem16/src/del16write~.d.1812
 delete mode 100644 externals/iem16/src/del16write~.d.18186
 delete mode 100644 externals/iem16/src/del16write~.d.18610
 delete mode 100644 externals/iem16/src/del16write~.d.19555
 delete mode 100644 externals/iem16/src/del16write~.d.19783
 delete mode 100644 externals/iem16/src/del16write~.d.20008
 delete mode 100644 externals/iem16/src/del16write~.d.20568
 delete mode 100644 externals/iem16/src/del16write~.d.20784
 delete mode 100644 externals/iem16/src/del16write~.d.20893
 delete mode 100644 externals/iem16/src/del16write~.d.21285
 delete mode 100644 externals/iem16/src/del16write~.d.21423
 delete mode 100644 externals/iem16/src/del16write~.d.21602
 delete mode 100644 externals/iem16/src/del16write~.d.21628
 delete mode 100644 externals/iem16/src/del16write~.d.21638
 delete mode 100644 externals/iem16/src/del16write~.d.21835
 delete mode 100644 externals/iem16/src/del16write~.d.21862
 delete mode 100644 externals/iem16/src/del16write~.d.21937
 delete mode 100644 externals/iem16/src/del16write~.d.23188
 delete mode 100644 externals/iem16/src/del16write~.d.23620
 delete mode 100644 externals/iem16/src/del16write~.d.23749
 delete mode 100644 externals/iem16/src/del16write~.d.23887
 delete mode 100644 externals/iem16/src/del16write~.d.23944
 delete mode 100644 externals/iem16/src/del16write~.d.23962
 delete mode 100644 externals/iem16/src/del16write~.d.2402
 delete mode 100644 externals/iem16/src/del16write~.d.24142
 delete mode 100644 externals/iem16/src/del16write~.d.2420
 delete mode 100644 externals/iem16/src/del16write~.d.24367
 delete mode 100644 externals/iem16/src/del16write~.d.24469
 delete mode 100644 externals/iem16/src/del16write~.d.24801
 delete mode 100644 externals/iem16/src/del16write~.d.24943
 delete mode 100644 externals/iem16/src/del16write~.d.2514
 delete mode 100644 externals/iem16/src/del16write~.d.2526
 delete mode 100644 externals/iem16/src/del16write~.d.25882
 delete mode 100644 externals/iem16/src/del16write~.d.25940
 delete mode 100644 externals/iem16/src/del16write~.d.26276
 delete mode 100644 externals/iem16/src/del16write~.d.26349
 delete mode 100644 externals/iem16/src/del16write~.d.27095
 delete mode 100644 externals/iem16/src/del16write~.d.27223
 delete mode 100644 externals/iem16/src/del16write~.d.27583
 delete mode 100644 externals/iem16/src/del16write~.d.27655
 delete mode 100644 externals/iem16/src/del16write~.d.27661
 delete mode 100644 externals/iem16/src/del16write~.d.27678
 delete mode 100644 externals/iem16/src/del16write~.d.27924
 delete mode 100644 externals/iem16/src/del16write~.d.27926
 delete mode 100644 externals/iem16/src/del16write~.d.27992
 delete mode 100644 externals/iem16/src/del16write~.d.28355
 delete mode 100644 externals/iem16/src/del16write~.d.28505
 delete mode 100644 externals/iem16/src/del16write~.d.2859
 delete mode 100644 externals/iem16/src/del16write~.d.28609
 delete mode 100644 externals/iem16/src/del16write~.d.2862
 delete mode 100644 externals/iem16/src/del16write~.d.28676
 delete mode 100644 externals/iem16/src/del16write~.d.28951
 delete mode 100644 externals/iem16/src/del16write~.d.28961
 delete mode 100644 externals/iem16/src/del16write~.d.29534
 delete mode 100644 externals/iem16/src/del16write~.d.29542
 delete mode 100644 externals/iem16/src/del16write~.d.2992
 delete mode 100644 externals/iem16/src/del16write~.d.29980
 delete mode 100644 externals/iem16/src/del16write~.d.30239
 delete mode 100644 externals/iem16/src/del16write~.d.30767
 delete mode 100644 externals/iem16/src/del16write~.d.30887
 delete mode 100644 externals/iem16/src/del16write~.d.30940
 delete mode 100644 externals/iem16/src/del16write~.d.31055
 delete mode 100644 externals/iem16/src/del16write~.d.31146
 delete mode 100644 externals/iem16/src/del16write~.d.31797
 delete mode 100644 externals/iem16/src/del16write~.d.31866
 delete mode 100644 externals/iem16/src/del16write~.d.32066
 delete mode 100644 externals/iem16/src/del16write~.d.32340
 delete mode 100644 externals/iem16/src/del16write~.d.3240
 delete mode 100644 externals/iem16/src/del16write~.d.32402
 delete mode 100644 externals/iem16/src/del16write~.d.32443
 delete mode 100644 externals/iem16/src/del16write~.d.32523
 delete mode 100644 externals/iem16/src/del16write~.d.32575
 delete mode 100644 externals/iem16/src/del16write~.d.32632
 delete mode 100644 externals/iem16/src/del16write~.d.3406
 delete mode 100644 externals/iem16/src/del16write~.d.4145
 delete mode 100644 externals/iem16/src/del16write~.d.4461
 delete mode 100644 externals/iem16/src/del16write~.d.5047
 delete mode 100644 externals/iem16/src/del16write~.d.513
 delete mode 100644 externals/iem16/src/del16write~.d.5191
 delete mode 100644 externals/iem16/src/del16write~.d.5715
 delete mode 100644 externals/iem16/src/del16write~.d.6344
 delete mode 100644 externals/iem16/src/del16write~.d.6628
 delete mode 100644 externals/iem16/src/del16write~.d.6797
 delete mode 100644 externals/iem16/src/del16write~.d.6839
 delete mode 100644 externals/iem16/src/del16write~.d.6851
 delete mode 100644 externals/iem16/src/del16write~.d.7432
 delete mode 100644 externals/iem16/src/del16write~.d.823
 delete mode 100644 externals/iem16/src/del16write~.d.8393
 delete mode 100644 externals/iem16/src/del16write~.d.8394
 delete mode 100644 externals/iem16/src/del16write~.d.8453
 delete mode 100644 externals/iem16/src/del16write~.d.8633
 delete mode 100644 externals/iem16/src/del16write~.d.8727
 delete mode 100644 externals/iem16/src/del16write~.d.8813
 delete mode 100644 externals/iem16/src/del16write~.d.9050
 delete mode 100644 externals/iem16/src/del16write~.d.9129
 delete mode 100644 externals/iem16/src/del16write~.d.9781
 delete mode 100644 externals/iem16/src/iem16.d.10284
 delete mode 100644 externals/iem16/src/iem16.d.10424
 delete mode 100644 externals/iem16/src/iem16.d.10773
 delete mode 100644 externals/iem16/src/iem16.d.11198
 delete mode 100644 externals/iem16/src/iem16.d.11223
 delete mode 100644 externals/iem16/src/iem16.d.11565
 delete mode 100644 externals/iem16/src/iem16.d.11912
 delete mode 100644 externals/iem16/src/iem16.d.12004
 delete mode 100644 externals/iem16/src/iem16.d.1208
 delete mode 100644 externals/iem16/src/iem16.d.12144
 delete mode 100644 externals/iem16/src/iem16.d.12422
 delete mode 100644 externals/iem16/src/iem16.d.12631
 delete mode 100644 externals/iem16/src/iem16.d.12646
 delete mode 100644 externals/iem16/src/iem16.d.12785
 delete mode 100644 externals/iem16/src/iem16.d.13055
 delete mode 100644 externals/iem16/src/iem16.d.13111
 delete mode 100644 externals/iem16/src/iem16.d.13146
 delete mode 100644 externals/iem16/src/iem16.d.13667
 delete mode 100644 externals/iem16/src/iem16.d.13935
 delete mode 100644 externals/iem16/src/iem16.d.14152
 delete mode 100644 externals/iem16/src/iem16.d.14357
 delete mode 100644 externals/iem16/src/iem16.d.14557
 delete mode 100644 externals/iem16/src/iem16.d.14709
 delete mode 100644 externals/iem16/src/iem16.d.14731
 delete mode 100644 externals/iem16/src/iem16.d.14812
 delete mode 100644 externals/iem16/src/iem16.d.1524
 delete mode 100644 externals/iem16/src/iem16.d.15242
 delete mode 100644 externals/iem16/src/iem16.d.15394
 delete mode 100644 externals/iem16/src/iem16.d.15429
 delete mode 100644 externals/iem16/src/iem16.d.15460
 delete mode 100644 externals/iem16/src/iem16.d.15558
 delete mode 100644 externals/iem16/src/iem16.d.1557
 delete mode 100644 externals/iem16/src/iem16.d.15719
 delete mode 100644 externals/iem16/src/iem16.d.16792
 delete mode 100644 externals/iem16/src/iem16.d.16864
 delete mode 100644 externals/iem16/src/iem16.d.17528
 delete mode 100644 externals/iem16/src/iem16.d.17564
 delete mode 100644 externals/iem16/src/iem16.d.17566
 delete mode 100644 externals/iem16/src/iem16.d.17614
 delete mode 100644 externals/iem16/src/iem16.d.1762
 delete mode 100644 externals/iem16/src/iem16.d.17733
 delete mode 100644 externals/iem16/src/iem16.d.17782
 delete mode 100644 externals/iem16/src/iem16.d.18138
 delete mode 100644 externals/iem16/src/iem16.d.18562
 delete mode 100644 externals/iem16/src/iem16.d.19507
 delete mode 100644 externals/iem16/src/iem16.d.19735
 delete mode 100644 externals/iem16/src/iem16.d.19960
 delete mode 100644 externals/iem16/src/iem16.d.20520
 delete mode 100644 externals/iem16/src/iem16.d.20736
 delete mode 100644 externals/iem16/src/iem16.d.20845
 delete mode 100644 externals/iem16/src/iem16.d.21237
 delete mode 100644 externals/iem16/src/iem16.d.21375
 delete mode 100644 externals/iem16/src/iem16.d.21554
 delete mode 100644 externals/iem16/src/iem16.d.21580
 delete mode 100644 externals/iem16/src/iem16.d.21590
 delete mode 100644 externals/iem16/src/iem16.d.21787
 delete mode 100644 externals/iem16/src/iem16.d.21814
 delete mode 100644 externals/iem16/src/iem16.d.21889
 delete mode 100644 externals/iem16/src/iem16.d.23140
 delete mode 100644 externals/iem16/src/iem16.d.2354
 delete mode 100644 externals/iem16/src/iem16.d.23572
 delete mode 100644 externals/iem16/src/iem16.d.23701
 delete mode 100644 externals/iem16/src/iem16.d.2372
 delete mode 100644 externals/iem16/src/iem16.d.23839
 delete mode 100644 externals/iem16/src/iem16.d.23896
 delete mode 100644 externals/iem16/src/iem16.d.23914
 delete mode 100644 externals/iem16/src/iem16.d.24091
 delete mode 100644 externals/iem16/src/iem16.d.24319
 delete mode 100644 externals/iem16/src/iem16.d.24421
 delete mode 100644 externals/iem16/src/iem16.d.2463
 delete mode 100644 externals/iem16/src/iem16.d.24753
 delete mode 100644 externals/iem16/src/iem16.d.2478
 delete mode 100644 externals/iem16/src/iem16.d.24895
 delete mode 100644 externals/iem16/src/iem16.d.25834
 delete mode 100644 externals/iem16/src/iem16.d.25892
 delete mode 100644 externals/iem16/src/iem16.d.26228
 delete mode 100644 externals/iem16/src/iem16.d.26301
 delete mode 100644 externals/iem16/src/iem16.d.27047
 delete mode 100644 externals/iem16/src/iem16.d.27175
 delete mode 100644 externals/iem16/src/iem16.d.27535
 delete mode 100644 externals/iem16/src/iem16.d.27607
 delete mode 100644 externals/iem16/src/iem16.d.27613
 delete mode 100644 externals/iem16/src/iem16.d.27630
 delete mode 100644 externals/iem16/src/iem16.d.27876
 delete mode 100644 externals/iem16/src/iem16.d.27878
 delete mode 100644 externals/iem16/src/iem16.d.27944
 delete mode 100644 externals/iem16/src/iem16.d.2810
 delete mode 100644 externals/iem16/src/iem16.d.2814
 delete mode 100644 externals/iem16/src/iem16.d.28307
 delete mode 100644 externals/iem16/src/iem16.d.28457
 delete mode 100644 externals/iem16/src/iem16.d.28561
 delete mode 100644 externals/iem16/src/iem16.d.28628
 delete mode 100644 externals/iem16/src/iem16.d.28903
 delete mode 100644 externals/iem16/src/iem16.d.28913
 delete mode 100644 externals/iem16/src/iem16.d.2942
 delete mode 100644 externals/iem16/src/iem16.d.29478
 delete mode 100644 externals/iem16/src/iem16.d.29494
 delete mode 100644 externals/iem16/src/iem16.d.29932
 delete mode 100644 externals/iem16/src/iem16.d.30191
 delete mode 100644 externals/iem16/src/iem16.d.30719
 delete mode 100644 externals/iem16/src/iem16.d.30839
 delete mode 100644 externals/iem16/src/iem16.d.30892
 delete mode 100644 externals/iem16/src/iem16.d.31007
 delete mode 100644 externals/iem16/src/iem16.d.31098
 delete mode 100644 externals/iem16/src/iem16.d.3170
 delete mode 100644 externals/iem16/src/iem16.d.31749
 delete mode 100644 externals/iem16/src/iem16.d.31818
 delete mode 100644 externals/iem16/src/iem16.d.32018
 delete mode 100644 externals/iem16/src/iem16.d.32292
 delete mode 100644 externals/iem16/src/iem16.d.32354
 delete mode 100644 externals/iem16/src/iem16.d.32395
 delete mode 100644 externals/iem16/src/iem16.d.32475
 delete mode 100644 externals/iem16/src/iem16.d.32527
 delete mode 100644 externals/iem16/src/iem16.d.32584
 delete mode 100644 externals/iem16/src/iem16.d.3358
 delete mode 100644 externals/iem16/src/iem16.d.4097
 delete mode 100644 externals/iem16/src/iem16.d.4413
 delete mode 100644 externals/iem16/src/iem16.d.465
 delete mode 100644 externals/iem16/src/iem16.d.4999
 delete mode 100644 externals/iem16/src/iem16.d.5143
 delete mode 100644 externals/iem16/src/iem16.d.5667
 delete mode 100644 externals/iem16/src/iem16.d.6296
 delete mode 100644 externals/iem16/src/iem16.d.6580
 delete mode 100644 externals/iem16/src/iem16.d.6749
 delete mode 100644 externals/iem16/src/iem16.d.6791
 delete mode 100644 externals/iem16/src/iem16.d.6803
 delete mode 100644 externals/iem16/src/iem16.d.7384
 delete mode 100644 externals/iem16/src/iem16.d.774
 delete mode 100644 externals/iem16/src/iem16.d.8345
 delete mode 100644 externals/iem16/src/iem16.d.8346
 delete mode 100644 externals/iem16/src/iem16.d.8405
 delete mode 100644 externals/iem16/src/iem16.d.8585
 delete mode 100644 externals/iem16/src/iem16.d.8679
 delete mode 100644 externals/iem16/src/iem16.d.8765
 delete mode 100644 externals/iem16/src/iem16.d.9002
 delete mode 100644 externals/iem16/src/iem16.d.9081
 delete mode 100644 externals/iem16/src/iem16.d.9733
 delete mode 100644 externals/iem16/src/iem16_delay.h
 delete mode 100644 externals/iem16/src/tab16play~.d.10328
 delete mode 100644 externals/iem16/src/tab16play~.d.10468
 delete mode 100644 externals/iem16/src/tab16play~.d.10817
 delete mode 100644 externals/iem16/src/tab16play~.d.11242
 delete mode 100644 externals/iem16/src/tab16play~.d.11267
 delete mode 100644 externals/iem16/src/tab16play~.d.11609
 delete mode 100644 externals/iem16/src/tab16play~.d.11956
 delete mode 100644 externals/iem16/src/tab16play~.d.12048
 delete mode 100644 externals/iem16/src/tab16play~.d.12188
 delete mode 100644 externals/iem16/src/tab16play~.d.12466
 delete mode 100644 externals/iem16/src/tab16play~.d.12675
 delete mode 100644 externals/iem16/src/tab16play~.d.12690
 delete mode 100644 externals/iem16/src/tab16play~.d.12829
 delete mode 100644 externals/iem16/src/tab16play~.d.13099
 delete mode 100644 externals/iem16/src/tab16play~.d.13155
 delete mode 100644 externals/iem16/src/tab16play~.d.13190
 delete mode 100644 externals/iem16/src/tab16play~.d.1370
 delete mode 100644 externals/iem16/src/tab16play~.d.13711
 delete mode 100644 externals/iem16/src/tab16play~.d.13979
 delete mode 100644 externals/iem16/src/tab16play~.d.14196
 delete mode 100644 externals/iem16/src/tab16play~.d.14401
 delete mode 100644 externals/iem16/src/tab16play~.d.14601
 delete mode 100644 externals/iem16/src/tab16play~.d.14753
 delete mode 100644 externals/iem16/src/tab16play~.d.14775
 delete mode 100644 externals/iem16/src/tab16play~.d.14856
 delete mode 100644 externals/iem16/src/tab16play~.d.15286
 delete mode 100644 externals/iem16/src/tab16play~.d.15438
 delete mode 100644 externals/iem16/src/tab16play~.d.15473
 delete mode 100644 externals/iem16/src/tab16play~.d.15504
 delete mode 100644 externals/iem16/src/tab16play~.d.15602
 delete mode 100644 externals/iem16/src/tab16play~.d.1568
 delete mode 100644 externals/iem16/src/tab16play~.d.15763
 delete mode 100644 externals/iem16/src/tab16play~.d.1601
 delete mode 100644 externals/iem16/src/tab16play~.d.16836
 delete mode 100644 externals/iem16/src/tab16play~.d.16908
 delete mode 100644 externals/iem16/src/tab16play~.d.17572
 delete mode 100644 externals/iem16/src/tab16play~.d.17608
 delete mode 100644 externals/iem16/src/tab16play~.d.17610
 delete mode 100644 externals/iem16/src/tab16play~.d.17658
 delete mode 100644 externals/iem16/src/tab16play~.d.17777
 delete mode 100644 externals/iem16/src/tab16play~.d.17826
 delete mode 100644 externals/iem16/src/tab16play~.d.1808
 delete mode 100644 externals/iem16/src/tab16play~.d.18182
 delete mode 100644 externals/iem16/src/tab16play~.d.18606
 delete mode 100644 externals/iem16/src/tab16play~.d.19551
 delete mode 100644 externals/iem16/src/tab16play~.d.19779
 delete mode 100644 externals/iem16/src/tab16play~.d.20004
 delete mode 100644 externals/iem16/src/tab16play~.d.20564
 delete mode 100644 externals/iem16/src/tab16play~.d.20780
 delete mode 100644 externals/iem16/src/tab16play~.d.20889
 delete mode 100644 externals/iem16/src/tab16play~.d.21281
 delete mode 100644 externals/iem16/src/tab16play~.d.21419
 delete mode 100644 externals/iem16/src/tab16play~.d.21624
 delete mode 100644 externals/iem16/src/tab16play~.d.21634
 delete mode 100644 externals/iem16/src/tab16play~.d.21831
 delete mode 100644 externals/iem16/src/tab16play~.d.21858
 delete mode 100644 externals/iem16/src/tab16play~.d.21933
 delete mode 100644 externals/iem16/src/tab16play~.d.23184
 delete mode 100644 externals/iem16/src/tab16play~.d.23616
 delete mode 100644 externals/iem16/src/tab16play~.d.23745
 delete mode 100644 externals/iem16/src/tab16play~.d.23883
 delete mode 100644 externals/iem16/src/tab16play~.d.23940
 delete mode 100644 externals/iem16/src/tab16play~.d.23958
 delete mode 100644 externals/iem16/src/tab16play~.d.2398
 delete mode 100644 externals/iem16/src/tab16play~.d.24138
 delete mode 100644 externals/iem16/src/tab16play~.d.2416
 delete mode 100644 externals/iem16/src/tab16play~.d.24363
 delete mode 100644 externals/iem16/src/tab16play~.d.24465
 delete mode 100644 externals/iem16/src/tab16play~.d.24797
 delete mode 100644 externals/iem16/src/tab16play~.d.24939
 delete mode 100644 externals/iem16/src/tab16play~.d.2510
 delete mode 100644 externals/iem16/src/tab16play~.d.2522
 delete mode 100644 externals/iem16/src/tab16play~.d.25878
 delete mode 100644 externals/iem16/src/tab16play~.d.25936
 delete mode 100644 externals/iem16/src/tab16play~.d.26272
 delete mode 100644 externals/iem16/src/tab16play~.d.26345
 delete mode 100644 externals/iem16/src/tab16play~.d.27091
 delete mode 100644 externals/iem16/src/tab16play~.d.27219
 delete mode 100644 externals/iem16/src/tab16play~.d.27579
 delete mode 100644 externals/iem16/src/tab16play~.d.27651
 delete mode 100644 externals/iem16/src/tab16play~.d.27657
 delete mode 100644 externals/iem16/src/tab16play~.d.27674
 delete mode 100644 externals/iem16/src/tab16play~.d.27920
 delete mode 100644 externals/iem16/src/tab16play~.d.27922
 delete mode 100644 externals/iem16/src/tab16play~.d.27988
 delete mode 100644 externals/iem16/src/tab16play~.d.28351
 delete mode 100644 externals/iem16/src/tab16play~.d.28501
 delete mode 100644 externals/iem16/src/tab16play~.d.2854
 delete mode 100644 externals/iem16/src/tab16play~.d.2858
 delete mode 100644 externals/iem16/src/tab16play~.d.28605
 delete mode 100644 externals/iem16/src/tab16play~.d.28672
 delete mode 100644 externals/iem16/src/tab16play~.d.28947
 delete mode 100644 externals/iem16/src/tab16play~.d.28957
 delete mode 100644 externals/iem16/src/tab16play~.d.29530
 delete mode 100644 externals/iem16/src/tab16play~.d.29538
 delete mode 100644 externals/iem16/src/tab16play~.d.2988
 delete mode 100644 externals/iem16/src/tab16play~.d.29976
 delete mode 100644 externals/iem16/src/tab16play~.d.30235
 delete mode 100644 externals/iem16/src/tab16play~.d.30763
 delete mode 100644 externals/iem16/src/tab16play~.d.30883
 delete mode 100644 externals/iem16/src/tab16play~.d.30936
 delete mode 100644 externals/iem16/src/tab16play~.d.31051
 delete mode 100644 externals/iem16/src/tab16play~.d.31142
 delete mode 100644 externals/iem16/src/tab16play~.d.31793
 delete mode 100644 externals/iem16/src/tab16play~.d.31862
 delete mode 100644 externals/iem16/src/tab16play~.d.32062
 delete mode 100644 externals/iem16/src/tab16play~.d.3231
 delete mode 100644 externals/iem16/src/tab16play~.d.32336
 delete mode 100644 externals/iem16/src/tab16play~.d.32398
 delete mode 100644 externals/iem16/src/tab16play~.d.32439
 delete mode 100644 externals/iem16/src/tab16play~.d.32519
 delete mode 100644 externals/iem16/src/tab16play~.d.32571
 delete mode 100644 externals/iem16/src/tab16play~.d.32628
 delete mode 100644 externals/iem16/src/tab16play~.d.3402
 delete mode 100644 externals/iem16/src/tab16play~.d.4141
 delete mode 100644 externals/iem16/src/tab16play~.d.4457
 delete mode 100644 externals/iem16/src/tab16play~.d.5043
 delete mode 100644 externals/iem16/src/tab16play~.d.509
 delete mode 100644 externals/iem16/src/tab16play~.d.5187
 delete mode 100644 externals/iem16/src/tab16play~.d.5711
 delete mode 100644 externals/iem16/src/tab16play~.d.6340
 delete mode 100644 externals/iem16/src/tab16play~.d.6624
 delete mode 100644 externals/iem16/src/tab16play~.d.6793
 delete mode 100644 externals/iem16/src/tab16play~.d.6835
 delete mode 100644 externals/iem16/src/tab16play~.d.6847
 delete mode 100644 externals/iem16/src/tab16play~.d.7428
 delete mode 100644 externals/iem16/src/tab16play~.d.819
 delete mode 100644 externals/iem16/src/tab16play~.d.8389
 delete mode 100644 externals/iem16/src/tab16play~.d.8449
 delete mode 100644 externals/iem16/src/tab16play~.d.8629
 delete mode 100644 externals/iem16/src/tab16play~.d.8723
 delete mode 100644 externals/iem16/src/tab16play~.d.9046
 delete mode 100644 externals/iem16/src/tab16play~.d.9125
 delete mode 100644 externals/iem16/src/tab16play~.d.9777
 delete mode 100644 externals/iem16/src/tab16read.d.10324
 delete mode 100644 externals/iem16/src/tab16read.d.10464
 delete mode 100644 externals/iem16/src/tab16read.d.10813
 delete mode 100644 externals/iem16/src/tab16read.d.11238
 delete mode 100644 externals/iem16/src/tab16read.d.11263
 delete mode 100644 externals/iem16/src/tab16read.d.11605
 delete mode 100644 externals/iem16/src/tab16read.d.11952
 delete mode 100644 externals/iem16/src/tab16read.d.12044
 delete mode 100644 externals/iem16/src/tab16read.d.12184
 delete mode 100644 externals/iem16/src/tab16read.d.12462
 delete mode 100644 externals/iem16/src/tab16read.d.12671
 delete mode 100644 externals/iem16/src/tab16read.d.12686
 delete mode 100644 externals/iem16/src/tab16read.d.12825
 delete mode 100644 externals/iem16/src/tab16read.d.13095
 delete mode 100644 externals/iem16/src/tab16read.d.13151
 delete mode 100644 externals/iem16/src/tab16read.d.13186
 delete mode 100644 externals/iem16/src/tab16read.d.1353
 delete mode 100644 externals/iem16/src/tab16read.d.13707
 delete mode 100644 externals/iem16/src/tab16read.d.13975
 delete mode 100644 externals/iem16/src/tab16read.d.14192
 delete mode 100644 externals/iem16/src/tab16read.d.14397
 delete mode 100644 externals/iem16/src/tab16read.d.14597
 delete mode 100644 externals/iem16/src/tab16read.d.14749
 delete mode 100644 externals/iem16/src/tab16read.d.14771
 delete mode 100644 externals/iem16/src/tab16read.d.14852
 delete mode 100644 externals/iem16/src/tab16read.d.15282
 delete mode 100644 externals/iem16/src/tab16read.d.15434
 delete mode 100644 externals/iem16/src/tab16read.d.15469
 delete mode 100644 externals/iem16/src/tab16read.d.15500
 delete mode 100644 externals/iem16/src/tab16read.d.15598
 delete mode 100644 externals/iem16/src/tab16read.d.1564
 delete mode 100644 externals/iem16/src/tab16read.d.15759
 delete mode 100644 externals/iem16/src/tab16read.d.1597
 delete mode 100644 externals/iem16/src/tab16read.d.16904
 delete mode 100644 externals/iem16/src/tab16read.d.17568
 delete mode 100644 externals/iem16/src/tab16read.d.17604
 delete mode 100644 externals/iem16/src/tab16read.d.17606
 delete mode 100644 externals/iem16/src/tab16read.d.17654
 delete mode 100644 externals/iem16/src/tab16read.d.17773
 delete mode 100644 externals/iem16/src/tab16read.d.17822
 delete mode 100644 externals/iem16/src/tab16read.d.1804
 delete mode 100644 externals/iem16/src/tab16read.d.18178
 delete mode 100644 externals/iem16/src/tab16read.d.18602
 delete mode 100644 externals/iem16/src/tab16read.d.19547
 delete mode 100644 externals/iem16/src/tab16read.d.19775
 delete mode 100644 externals/iem16/src/tab16read.d.20000
 delete mode 100644 externals/iem16/src/tab16read.d.20560
 delete mode 100644 externals/iem16/src/tab16read.d.20776
 delete mode 100644 externals/iem16/src/tab16read.d.20885
 delete mode 100644 externals/iem16/src/tab16read.d.21277
 delete mode 100644 externals/iem16/src/tab16read.d.21415
 delete mode 100644 externals/iem16/src/tab16read.d.21594
 delete mode 100644 externals/iem16/src/tab16read.d.21620
 delete mode 100644 externals/iem16/src/tab16read.d.21630
 delete mode 100644 externals/iem16/src/tab16read.d.21827
 delete mode 100644 externals/iem16/src/tab16read.d.21854
 delete mode 100644 externals/iem16/src/tab16read.d.21929
 delete mode 100644 externals/iem16/src/tab16read.d.23180
 delete mode 100644 externals/iem16/src/tab16read.d.23612
 delete mode 100644 externals/iem16/src/tab16read.d.23741
 delete mode 100644 externals/iem16/src/tab16read.d.23879
 delete mode 100644 externals/iem16/src/tab16read.d.23936
 delete mode 100644 externals/iem16/src/tab16read.d.2394
 delete mode 100644 externals/iem16/src/tab16read.d.23954
 delete mode 100644 externals/iem16/src/tab16read.d.2412
 delete mode 100644 externals/iem16/src/tab16read.d.24134
 delete mode 100644 externals/iem16/src/tab16read.d.24359
 delete mode 100644 externals/iem16/src/tab16read.d.24461
 delete mode 100644 externals/iem16/src/tab16read.d.24793
 delete mode 100644 externals/iem16/src/tab16read.d.24935
 delete mode 100644 externals/iem16/src/tab16read.d.2506
 delete mode 100644 externals/iem16/src/tab16read.d.2518
 delete mode 100644 externals/iem16/src/tab16read.d.25874
 delete mode 100644 externals/iem16/src/tab16read.d.25932
 delete mode 100644 externals/iem16/src/tab16read.d.26268
 delete mode 100644 externals/iem16/src/tab16read.d.26341
 delete mode 100644 externals/iem16/src/tab16read.d.27087
 delete mode 100644 externals/iem16/src/tab16read.d.27215
 delete mode 100644 externals/iem16/src/tab16read.d.27575
 delete mode 100644 externals/iem16/src/tab16read.d.27647
 delete mode 100644 externals/iem16/src/tab16read.d.27653
 delete mode 100644 externals/iem16/src/tab16read.d.27670
 delete mode 100644 externals/iem16/src/tab16read.d.27916
 delete mode 100644 externals/iem16/src/tab16read.d.27918
 delete mode 100644 externals/iem16/src/tab16read.d.27984
 delete mode 100644 externals/iem16/src/tab16read.d.28347
 delete mode 100644 externals/iem16/src/tab16read.d.28497
 delete mode 100644 externals/iem16/src/tab16read.d.2850
 delete mode 100644 externals/iem16/src/tab16read.d.2854
 delete mode 100644 externals/iem16/src/tab16read.d.28601
 delete mode 100644 externals/iem16/src/tab16read.d.28668
 delete mode 100644 externals/iem16/src/tab16read.d.28943
 delete mode 100644 externals/iem16/src/tab16read.d.28953
 delete mode 100644 externals/iem16/src/tab16read.d.29524
 delete mode 100644 externals/iem16/src/tab16read.d.29534
 delete mode 100644 externals/iem16/src/tab16read.d.2984
 delete mode 100644 externals/iem16/src/tab16read.d.29972
 delete mode 100644 externals/iem16/src/tab16read.d.30231
 delete mode 100644 externals/iem16/src/tab16read.d.30759
 delete mode 100644 externals/iem16/src/tab16read.d.30879
 delete mode 100644 externals/iem16/src/tab16read.d.30932
 delete mode 100644 externals/iem16/src/tab16read.d.31047
 delete mode 100644 externals/iem16/src/tab16read.d.31138
 delete mode 100644 externals/iem16/src/tab16read.d.31789
 delete mode 100644 externals/iem16/src/tab16read.d.31858
 delete mode 100644 externals/iem16/src/tab16read.d.32058
 delete mode 100644 externals/iem16/src/tab16read.d.3223
 delete mode 100644 externals/iem16/src/tab16read.d.32332
 delete mode 100644 externals/iem16/src/tab16read.d.32394
 delete mode 100644 externals/iem16/src/tab16read.d.32435
 delete mode 100644 externals/iem16/src/tab16read.d.32515
 delete mode 100644 externals/iem16/src/tab16read.d.32567
 delete mode 100644 externals/iem16/src/tab16read.d.32624
 delete mode 100644 externals/iem16/src/tab16read.d.3398
 delete mode 100644 externals/iem16/src/tab16read.d.4137
 delete mode 100644 externals/iem16/src/tab16read.d.4453
 delete mode 100644 externals/iem16/src/tab16read.d.5039
 delete mode 100644 externals/iem16/src/tab16read.d.505
 delete mode 100644 externals/iem16/src/tab16read.d.5183
 delete mode 100644 externals/iem16/src/tab16read.d.5707
 delete mode 100644 externals/iem16/src/tab16read.d.6336
 delete mode 100644 externals/iem16/src/tab16read.d.6620
 delete mode 100644 externals/iem16/src/tab16read.d.6789
 delete mode 100644 externals/iem16/src/tab16read.d.6831
 delete mode 100644 externals/iem16/src/tab16read.d.6843
 delete mode 100644 externals/iem16/src/tab16read.d.7424
 delete mode 100644 externals/iem16/src/tab16read.d.815
 delete mode 100644 externals/iem16/src/tab16read.d.8385
 delete mode 100644 externals/iem16/src/tab16read.d.8386
 delete mode 100644 externals/iem16/src/tab16read.d.8445
 delete mode 100644 externals/iem16/src/tab16read.d.8625
 delete mode 100644 externals/iem16/src/tab16read.d.8719
 delete mode 100644 externals/iem16/src/tab16read.d.8805
 delete mode 100644 externals/iem16/src/tab16read.d.9042
 delete mode 100644 externals/iem16/src/tab16read.d.9121
 delete mode 100644 externals/iem16/src/tab16read.d.9773
 delete mode 100644 externals/iem16/src/tab16read4.d.10320
 delete mode 100644 externals/iem16/src/tab16read4.d.10460
 delete mode 100644 externals/iem16/src/tab16read4.d.10809
 delete mode 100644 externals/iem16/src/tab16read4.d.11234
 delete mode 100644 externals/iem16/src/tab16read4.d.11259
 delete mode 100644 externals/iem16/src/tab16read4.d.11601
 delete mode 100644 externals/iem16/src/tab16read4.d.11948
 delete mode 100644 externals/iem16/src/tab16read4.d.12040
 delete mode 100644 externals/iem16/src/tab16read4.d.12180
 delete mode 100644 externals/iem16/src/tab16read4.d.12458
 delete mode 100644 externals/iem16/src/tab16read4.d.12667
 delete mode 100644 externals/iem16/src/tab16read4.d.12682
 delete mode 100644 externals/iem16/src/tab16read4.d.12821
 delete mode 100644 externals/iem16/src/tab16read4.d.13091
 delete mode 100644 externals/iem16/src/tab16read4.d.13147
 delete mode 100644 externals/iem16/src/tab16read4.d.13182
 delete mode 100644 externals/iem16/src/tab16read4.d.1339
 delete mode 100644 externals/iem16/src/tab16read4.d.13703
 delete mode 100644 externals/iem16/src/tab16read4.d.13971
 delete mode 100644 externals/iem16/src/tab16read4.d.14393
 delete mode 100644 externals/iem16/src/tab16read4.d.14593
 delete mode 100644 externals/iem16/src/tab16read4.d.14745
 delete mode 100644 externals/iem16/src/tab16read4.d.14767
 delete mode 100644 externals/iem16/src/tab16read4.d.14848
 delete mode 100644 externals/iem16/src/tab16read4.d.15278
 delete mode 100644 externals/iem16/src/tab16read4.d.15430
 delete mode 100644 externals/iem16/src/tab16read4.d.15496
 delete mode 100644 externals/iem16/src/tab16read4.d.15594
 delete mode 100644 externals/iem16/src/tab16read4.d.1560
 delete mode 100644 externals/iem16/src/tab16read4.d.15755
 delete mode 100644 externals/iem16/src/tab16read4.d.1593
 delete mode 100644 externals/iem16/src/tab16read4.d.16828
 delete mode 100644 externals/iem16/src/tab16read4.d.16900
 delete mode 100644 externals/iem16/src/tab16read4.d.17564
 delete mode 100644 externals/iem16/src/tab16read4.d.17600
 delete mode 100644 externals/iem16/src/tab16read4.d.17602
 delete mode 100644 externals/iem16/src/tab16read4.d.17650
 delete mode 100644 externals/iem16/src/tab16read4.d.17769
 delete mode 100644 externals/iem16/src/tab16read4.d.17818
 delete mode 100644 externals/iem16/src/tab16read4.d.1799
 delete mode 100644 externals/iem16/src/tab16read4.d.18174
 delete mode 100644 externals/iem16/src/tab16read4.d.18598
 delete mode 100644 externals/iem16/src/tab16read4.d.19543
 delete mode 100644 externals/iem16/src/tab16read4.d.19771
 delete mode 100644 externals/iem16/src/tab16read4.d.19996
 delete mode 100644 externals/iem16/src/tab16read4.d.20556
 delete mode 100644 externals/iem16/src/tab16read4.d.20772
 delete mode 100644 externals/iem16/src/tab16read4.d.20881
 delete mode 100644 externals/iem16/src/tab16read4.d.21273
 delete mode 100644 externals/iem16/src/tab16read4.d.21411
 delete mode 100644 externals/iem16/src/tab16read4.d.21590
 delete mode 100644 externals/iem16/src/tab16read4.d.21616
 delete mode 100644 externals/iem16/src/tab16read4.d.21626
 delete mode 100644 externals/iem16/src/tab16read4.d.21823
 delete mode 100644 externals/iem16/src/tab16read4.d.21925
 delete mode 100644 externals/iem16/src/tab16read4.d.23176
 delete mode 100644 externals/iem16/src/tab16read4.d.23608
 delete mode 100644 externals/iem16/src/tab16read4.d.23737
 delete mode 100644 externals/iem16/src/tab16read4.d.23875
 delete mode 100644 externals/iem16/src/tab16read4.d.2390
 delete mode 100644 externals/iem16/src/tab16read4.d.23932
 delete mode 100644 externals/iem16/src/tab16read4.d.23950
 delete mode 100644 externals/iem16/src/tab16read4.d.2408
 delete mode 100644 externals/iem16/src/tab16read4.d.24130
 delete mode 100644 externals/iem16/src/tab16read4.d.24355
 delete mode 100644 externals/iem16/src/tab16read4.d.24457
 delete mode 100644 externals/iem16/src/tab16read4.d.24789
 delete mode 100644 externals/iem16/src/tab16read4.d.24931
 delete mode 100644 externals/iem16/src/tab16read4.d.2501
 delete mode 100644 externals/iem16/src/tab16read4.d.2514
 delete mode 100644 externals/iem16/src/tab16read4.d.25870
 delete mode 100644 externals/iem16/src/tab16read4.d.25928
 delete mode 100644 externals/iem16/src/tab16read4.d.26264
 delete mode 100644 externals/iem16/src/tab16read4.d.26337
 delete mode 100644 externals/iem16/src/tab16read4.d.27083
 delete mode 100644 externals/iem16/src/tab16read4.d.27211
 delete mode 100644 externals/iem16/src/tab16read4.d.27571
 delete mode 100644 externals/iem16/src/tab16read4.d.27643
 delete mode 100644 externals/iem16/src/tab16read4.d.27649
 delete mode 100644 externals/iem16/src/tab16read4.d.27666
 delete mode 100644 externals/iem16/src/tab16read4.d.27912
 delete mode 100644 externals/iem16/src/tab16read4.d.27914
 delete mode 100644 externals/iem16/src/tab16read4.d.27980
 delete mode 100644 externals/iem16/src/tab16read4.d.28343
 delete mode 100644 externals/iem16/src/tab16read4.d.2846
 delete mode 100644 externals/iem16/src/tab16read4.d.28493
 delete mode 100644 externals/iem16/src/tab16read4.d.2850
 delete mode 100644 externals/iem16/src/tab16read4.d.28597
 delete mode 100644 externals/iem16/src/tab16read4.d.28664
 delete mode 100644 externals/iem16/src/tab16read4.d.28939
 delete mode 100644 externals/iem16/src/tab16read4.d.28949
 delete mode 100644 externals/iem16/src/tab16read4.d.29518
 delete mode 100644 externals/iem16/src/tab16read4.d.29530
 delete mode 100644 externals/iem16/src/tab16read4.d.2979
 delete mode 100644 externals/iem16/src/tab16read4.d.29968
 delete mode 100644 externals/iem16/src/tab16read4.d.30227
 delete mode 100644 externals/iem16/src/tab16read4.d.30755
 delete mode 100644 externals/iem16/src/tab16read4.d.30875
 delete mode 100644 externals/iem16/src/tab16read4.d.30928
 delete mode 100644 externals/iem16/src/tab16read4.d.31043
 delete mode 100644 externals/iem16/src/tab16read4.d.31134
 delete mode 100644 externals/iem16/src/tab16read4.d.31785
 delete mode 100644 externals/iem16/src/tab16read4.d.31854
 delete mode 100644 externals/iem16/src/tab16read4.d.32054
 delete mode 100644 externals/iem16/src/tab16read4.d.3219
 delete mode 100644 externals/iem16/src/tab16read4.d.32328
 delete mode 100644 externals/iem16/src/tab16read4.d.32390
 delete mode 100644 externals/iem16/src/tab16read4.d.32431
 delete mode 100644 externals/iem16/src/tab16read4.d.32511
 delete mode 100644 externals/iem16/src/tab16read4.d.32563
 delete mode 100644 externals/iem16/src/tab16read4.d.32620
 delete mode 100644 externals/iem16/src/tab16read4.d.3394
 delete mode 100644 externals/iem16/src/tab16read4.d.4133
 delete mode 100644 externals/iem16/src/tab16read4.d.4449
 delete mode 100644 externals/iem16/src/tab16read4.d.501
 delete mode 100644 externals/iem16/src/tab16read4.d.5035
 delete mode 100644 externals/iem16/src/tab16read4.d.5179
 delete mode 100644 externals/iem16/src/tab16read4.d.5703
 delete mode 100644 externals/iem16/src/tab16read4.d.6332
 delete mode 100644 externals/iem16/src/tab16read4.d.6616
 delete mode 100644 externals/iem16/src/tab16read4.d.6785
 delete mode 100644 externals/iem16/src/tab16read4.d.6827
 delete mode 100644 externals/iem16/src/tab16read4.d.6839
 delete mode 100644 externals/iem16/src/tab16read4.d.7420
 delete mode 100644 externals/iem16/src/tab16read4.d.811
 delete mode 100644 externals/iem16/src/tab16read4.d.8381
 delete mode 100644 externals/iem16/src/tab16read4.d.8382
 delete mode 100644 externals/iem16/src/tab16read4.d.8441
 delete mode 100644 externals/iem16/src/tab16read4.d.8621
 delete mode 100644 externals/iem16/src/tab16read4.d.8715
 delete mode 100644 externals/iem16/src/tab16read4.d.8801
 delete mode 100644 externals/iem16/src/tab16read4.d.9038
 delete mode 100644 externals/iem16/src/tab16read4.d.9117
 delete mode 100644 externals/iem16/src/tab16read4.d.9769
 delete mode 100644 externals/iem16/src/tab16read4~.d.10316
 delete mode 100644 externals/iem16/src/tab16read4~.d.10456
 delete mode 100644 externals/iem16/src/tab16read4~.d.10805
 delete mode 100644 externals/iem16/src/tab16read4~.d.11230
 delete mode 100644 externals/iem16/src/tab16read4~.d.11255
 delete mode 100644 externals/iem16/src/tab16read4~.d.11597
 delete mode 100644 externals/iem16/src/tab16read4~.d.11944
 delete mode 100644 externals/iem16/src/tab16read4~.d.12036
 delete mode 100644 externals/iem16/src/tab16read4~.d.12176
 delete mode 100644 externals/iem16/src/tab16read4~.d.12454
 delete mode 100644 externals/iem16/src/tab16read4~.d.12663
 delete mode 100644 externals/iem16/src/tab16read4~.d.12678
 delete mode 100644 externals/iem16/src/tab16read4~.d.12817
 delete mode 100644 externals/iem16/src/tab16read4~.d.13087
 delete mode 100644 externals/iem16/src/tab16read4~.d.13143
 delete mode 100644 externals/iem16/src/tab16read4~.d.13178
 delete mode 100644 externals/iem16/src/tab16read4~.d.1321
 delete mode 100644 externals/iem16/src/tab16read4~.d.13699
 delete mode 100644 externals/iem16/src/tab16read4~.d.13967
 delete mode 100644 externals/iem16/src/tab16read4~.d.14184
 delete mode 100644 externals/iem16/src/tab16read4~.d.14389
 delete mode 100644 externals/iem16/src/tab16read4~.d.14589
 delete mode 100644 externals/iem16/src/tab16read4~.d.14741
 delete mode 100644 externals/iem16/src/tab16read4~.d.14763
 delete mode 100644 externals/iem16/src/tab16read4~.d.14844
 delete mode 100644 externals/iem16/src/tab16read4~.d.15274
 delete mode 100644 externals/iem16/src/tab16read4~.d.15426
 delete mode 100644 externals/iem16/src/tab16read4~.d.15461
 delete mode 100644 externals/iem16/src/tab16read4~.d.15492
 delete mode 100644 externals/iem16/src/tab16read4~.d.1556
 delete mode 100644 externals/iem16/src/tab16read4~.d.15590
 delete mode 100644 externals/iem16/src/tab16read4~.d.15751
 delete mode 100644 externals/iem16/src/tab16read4~.d.1589
 delete mode 100644 externals/iem16/src/tab16read4~.d.16824
 delete mode 100644 externals/iem16/src/tab16read4~.d.16896
 delete mode 100644 externals/iem16/src/tab16read4~.d.17560
 delete mode 100644 externals/iem16/src/tab16read4~.d.17596
 delete mode 100644 externals/iem16/src/tab16read4~.d.17598
 delete mode 100644 externals/iem16/src/tab16read4~.d.17646
 delete mode 100644 externals/iem16/src/tab16read4~.d.17765
 delete mode 100644 externals/iem16/src/tab16read4~.d.17814
 delete mode 100644 externals/iem16/src/tab16read4~.d.1795
 delete mode 100644 externals/iem16/src/tab16read4~.d.18170
 delete mode 100644 externals/iem16/src/tab16read4~.d.18594
 delete mode 100644 externals/iem16/src/tab16read4~.d.19539
 delete mode 100644 externals/iem16/src/tab16read4~.d.19767
 delete mode 100644 externals/iem16/src/tab16read4~.d.19992
 delete mode 100644 externals/iem16/src/tab16read4~.d.20552
 delete mode 100644 externals/iem16/src/tab16read4~.d.20768
 delete mode 100644 externals/iem16/src/tab16read4~.d.20877
 delete mode 100644 externals/iem16/src/tab16read4~.d.21269
 delete mode 100644 externals/iem16/src/tab16read4~.d.21407
 delete mode 100644 externals/iem16/src/tab16read4~.d.21586
 delete mode 100644 externals/iem16/src/tab16read4~.d.21612
 delete mode 100644 externals/iem16/src/tab16read4~.d.21622
 delete mode 100644 externals/iem16/src/tab16read4~.d.21819
 delete mode 100644 externals/iem16/src/tab16read4~.d.21846
 delete mode 100644 externals/iem16/src/tab16read4~.d.21921
 delete mode 100644 externals/iem16/src/tab16read4~.d.23172
 delete mode 100644 externals/iem16/src/tab16read4~.d.23604
 delete mode 100644 externals/iem16/src/tab16read4~.d.23733
 delete mode 100644 externals/iem16/src/tab16read4~.d.2386
 delete mode 100644 externals/iem16/src/tab16read4~.d.23871
 delete mode 100644 externals/iem16/src/tab16read4~.d.23928
 delete mode 100644 externals/iem16/src/tab16read4~.d.23946
 delete mode 100644 externals/iem16/src/tab16read4~.d.2404
 delete mode 100644 externals/iem16/src/tab16read4~.d.24126
 delete mode 100644 externals/iem16/src/tab16read4~.d.24351
 delete mode 100644 externals/iem16/src/tab16read4~.d.24453
 delete mode 100644 externals/iem16/src/tab16read4~.d.24785
 delete mode 100644 externals/iem16/src/tab16read4~.d.24927
 delete mode 100644 externals/iem16/src/tab16read4~.d.2497
 delete mode 100644 externals/iem16/src/tab16read4~.d.2510
 delete mode 100644 externals/iem16/src/tab16read4~.d.25866
 delete mode 100644 externals/iem16/src/tab16read4~.d.25924
 delete mode 100644 externals/iem16/src/tab16read4~.d.26260
 delete mode 100644 externals/iem16/src/tab16read4~.d.26333
 delete mode 100644 externals/iem16/src/tab16read4~.d.27079
 delete mode 100644 externals/iem16/src/tab16read4~.d.27207
 delete mode 100644 externals/iem16/src/tab16read4~.d.27567
 delete mode 100644 externals/iem16/src/tab16read4~.d.27639
 delete mode 100644 externals/iem16/src/tab16read4~.d.27645
 delete mode 100644 externals/iem16/src/tab16read4~.d.27662
 delete mode 100644 externals/iem16/src/tab16read4~.d.27908
 delete mode 100644 externals/iem16/src/tab16read4~.d.27910
 delete mode 100644 externals/iem16/src/tab16read4~.d.27976
 delete mode 100644 externals/iem16/src/tab16read4~.d.28339
 delete mode 100644 externals/iem16/src/tab16read4~.d.2842
 delete mode 100644 externals/iem16/src/tab16read4~.d.2846
 delete mode 100644 externals/iem16/src/tab16read4~.d.28489
 delete mode 100644 externals/iem16/src/tab16read4~.d.28593
 delete mode 100644 externals/iem16/src/tab16read4~.d.28660
 delete mode 100644 externals/iem16/src/tab16read4~.d.28935
 delete mode 100644 externals/iem16/src/tab16read4~.d.28945
 delete mode 100644 externals/iem16/src/tab16read4~.d.29512
 delete mode 100644 externals/iem16/src/tab16read4~.d.29526
 delete mode 100644 externals/iem16/src/tab16read4~.d.2975
 delete mode 100644 externals/iem16/src/tab16read4~.d.29964
 delete mode 100644 externals/iem16/src/tab16read4~.d.30223
 delete mode 100644 externals/iem16/src/tab16read4~.d.30751
 delete mode 100644 externals/iem16/src/tab16read4~.d.30871
 delete mode 100644 externals/iem16/src/tab16read4~.d.30924
 delete mode 100644 externals/iem16/src/tab16read4~.d.31039
 delete mode 100644 externals/iem16/src/tab16read4~.d.31130
 delete mode 100644 externals/iem16/src/tab16read4~.d.31850
 delete mode 100644 externals/iem16/src/tab16read4~.d.32050
 delete mode 100644 externals/iem16/src/tab16read4~.d.3212
 delete mode 100644 externals/iem16/src/tab16read4~.d.32324
 delete mode 100644 externals/iem16/src/tab16read4~.d.32386
 delete mode 100644 externals/iem16/src/tab16read4~.d.32427
 delete mode 100644 externals/iem16/src/tab16read4~.d.32507
 delete mode 100644 externals/iem16/src/tab16read4~.d.32559
 delete mode 100644 externals/iem16/src/tab16read4~.d.32616
 delete mode 100644 externals/iem16/src/tab16read4~.d.3390
 delete mode 100644 externals/iem16/src/tab16read4~.d.4129
 delete mode 100644 externals/iem16/src/tab16read4~.d.4445
 delete mode 100644 externals/iem16/src/tab16read4~.d.497
 delete mode 100644 externals/iem16/src/tab16read4~.d.5031
 delete mode 100644 externals/iem16/src/tab16read4~.d.5175
 delete mode 100644 externals/iem16/src/tab16read4~.d.5699
 delete mode 100644 externals/iem16/src/tab16read4~.d.6328
 delete mode 100644 externals/iem16/src/tab16read4~.d.6612
 delete mode 100644 externals/iem16/src/tab16read4~.d.6781
 delete mode 100644 externals/iem16/src/tab16read4~.d.6823
 delete mode 100644 externals/iem16/src/tab16read4~.d.6835
 delete mode 100644 externals/iem16/src/tab16read4~.d.7416
 delete mode 100644 externals/iem16/src/tab16read4~.d.806
 delete mode 100644 externals/iem16/src/tab16read4~.d.8377
 delete mode 100644 externals/iem16/src/tab16read4~.d.8378
 delete mode 100644 externals/iem16/src/tab16read4~.d.8437
 delete mode 100644 externals/iem16/src/tab16read4~.d.8617
 delete mode 100644 externals/iem16/src/tab16read4~.d.8711
 delete mode 100644 externals/iem16/src/tab16read4~.d.8797
 delete mode 100644 externals/iem16/src/tab16read4~.d.9034
 delete mode 100644 externals/iem16/src/tab16read4~.d.9113
 delete mode 100644 externals/iem16/src/tab16read4~.d.9765
 delete mode 100644 externals/iem16/src/tab16read~.d.10312
 delete mode 100644 externals/iem16/src/tab16read~.d.10452
 delete mode 100644 externals/iem16/src/tab16read~.d.10801
 delete mode 100644 externals/iem16/src/tab16read~.d.11226
 delete mode 100644 externals/iem16/src/tab16read~.d.11251
 delete mode 100644 externals/iem16/src/tab16read~.d.11593
 delete mode 100644 externals/iem16/src/tab16read~.d.11940
 delete mode 100644 externals/iem16/src/tab16read~.d.12032
 delete mode 100644 externals/iem16/src/tab16read~.d.12172
 delete mode 100644 externals/iem16/src/tab16read~.d.12450
 delete mode 100644 externals/iem16/src/tab16read~.d.12659
 delete mode 100644 externals/iem16/src/tab16read~.d.12674
 delete mode 100644 externals/iem16/src/tab16read~.d.12813
 delete mode 100644 externals/iem16/src/tab16read~.d.1307
 delete mode 100644 externals/iem16/src/tab16read~.d.13083
 delete mode 100644 externals/iem16/src/tab16read~.d.13139
 delete mode 100644 externals/iem16/src/tab16read~.d.13174
 delete mode 100644 externals/iem16/src/tab16read~.d.13695
 delete mode 100644 externals/iem16/src/tab16read~.d.13963
 delete mode 100644 externals/iem16/src/tab16read~.d.14180
 delete mode 100644 externals/iem16/src/tab16read~.d.14385
 delete mode 100644 externals/iem16/src/tab16read~.d.14585
 delete mode 100644 externals/iem16/src/tab16read~.d.14759
 delete mode 100644 externals/iem16/src/tab16read~.d.14840
 delete mode 100644 externals/iem16/src/tab16read~.d.15270
 delete mode 100644 externals/iem16/src/tab16read~.d.15422
 delete mode 100644 externals/iem16/src/tab16read~.d.15457
 delete mode 100644 externals/iem16/src/tab16read~.d.15488
 delete mode 100644 externals/iem16/src/tab16read~.d.1552
 delete mode 100644 externals/iem16/src/tab16read~.d.15586
 delete mode 100644 externals/iem16/src/tab16read~.d.15747
 delete mode 100644 externals/iem16/src/tab16read~.d.1585
 delete mode 100644 externals/iem16/src/tab16read~.d.16820
 delete mode 100644 externals/iem16/src/tab16read~.d.16892
 delete mode 100644 externals/iem16/src/tab16read~.d.17556
 delete mode 100644 externals/iem16/src/tab16read~.d.17592
 delete mode 100644 externals/iem16/src/tab16read~.d.17594
 delete mode 100644 externals/iem16/src/tab16read~.d.17642
 delete mode 100644 externals/iem16/src/tab16read~.d.17761
 delete mode 100644 externals/iem16/src/tab16read~.d.17810
 delete mode 100644 externals/iem16/src/tab16read~.d.1791
 delete mode 100644 externals/iem16/src/tab16read~.d.18166
 delete mode 100644 externals/iem16/src/tab16read~.d.18590
 delete mode 100644 externals/iem16/src/tab16read~.d.19535
 delete mode 100644 externals/iem16/src/tab16read~.d.19763
 delete mode 100644 externals/iem16/src/tab16read~.d.19988
 delete mode 100644 externals/iem16/src/tab16read~.d.20548
 delete mode 100644 externals/iem16/src/tab16read~.d.20764
 delete mode 100644 externals/iem16/src/tab16read~.d.20873
 delete mode 100644 externals/iem16/src/tab16read~.d.21265
 delete mode 100644 externals/iem16/src/tab16read~.d.21403
 delete mode 100644 externals/iem16/src/tab16read~.d.21582
 delete mode 100644 externals/iem16/src/tab16read~.d.21608
 delete mode 100644 externals/iem16/src/tab16read~.d.21618
 delete mode 100644 externals/iem16/src/tab16read~.d.21815
 delete mode 100644 externals/iem16/src/tab16read~.d.21842
 delete mode 100644 externals/iem16/src/tab16read~.d.21917
 delete mode 100644 externals/iem16/src/tab16read~.d.23168
 delete mode 100644 externals/iem16/src/tab16read~.d.23600
 delete mode 100644 externals/iem16/src/tab16read~.d.23729
 delete mode 100644 externals/iem16/src/tab16read~.d.2382
 delete mode 100644 externals/iem16/src/tab16read~.d.23867
 delete mode 100644 externals/iem16/src/tab16read~.d.23924
 delete mode 100644 externals/iem16/src/tab16read~.d.23942
 delete mode 100644 externals/iem16/src/tab16read~.d.2400
 delete mode 100644 externals/iem16/src/tab16read~.d.24122
 delete mode 100644 externals/iem16/src/tab16read~.d.24347
 delete mode 100644 externals/iem16/src/tab16read~.d.24449
 delete mode 100644 externals/iem16/src/tab16read~.d.24781
 delete mode 100644 externals/iem16/src/tab16read~.d.2492
 delete mode 100644 externals/iem16/src/tab16read~.d.24923
 delete mode 100644 externals/iem16/src/tab16read~.d.2506
 delete mode 100644 externals/iem16/src/tab16read~.d.25862
 delete mode 100644 externals/iem16/src/tab16read~.d.25920
 delete mode 100644 externals/iem16/src/tab16read~.d.26256
 delete mode 100644 externals/iem16/src/tab16read~.d.26329
 delete mode 100644 externals/iem16/src/tab16read~.d.27075
 delete mode 100644 externals/iem16/src/tab16read~.d.27203
 delete mode 100644 externals/iem16/src/tab16read~.d.27563
 delete mode 100644 externals/iem16/src/tab16read~.d.27635
 delete mode 100644 externals/iem16/src/tab16read~.d.27641
 delete mode 100644 externals/iem16/src/tab16read~.d.27658
 delete mode 100644 externals/iem16/src/tab16read~.d.27904
 delete mode 100644 externals/iem16/src/tab16read~.d.27906
 delete mode 100644 externals/iem16/src/tab16read~.d.27972
 delete mode 100644 externals/iem16/src/tab16read~.d.28335
 delete mode 100644 externals/iem16/src/tab16read~.d.2838
 delete mode 100644 externals/iem16/src/tab16read~.d.2842
 delete mode 100644 externals/iem16/src/tab16read~.d.28485
 delete mode 100644 externals/iem16/src/tab16read~.d.28589
 delete mode 100644 externals/iem16/src/tab16read~.d.28656
 delete mode 100644 externals/iem16/src/tab16read~.d.28931
 delete mode 100644 externals/iem16/src/tab16read~.d.28941
 delete mode 100644 externals/iem16/src/tab16read~.d.29508
 delete mode 100644 externals/iem16/src/tab16read~.d.29522
 delete mode 100644 externals/iem16/src/tab16read~.d.2971
 delete mode 100644 externals/iem16/src/tab16read~.d.29960
 delete mode 100644 externals/iem16/src/tab16read~.d.30219
 delete mode 100644 externals/iem16/src/tab16read~.d.30747
 delete mode 100644 externals/iem16/src/tab16read~.d.30867
 delete mode 100644 externals/iem16/src/tab16read~.d.30920
 delete mode 100644 externals/iem16/src/tab16read~.d.31035
 delete mode 100644 externals/iem16/src/tab16read~.d.31126
 delete mode 100644 externals/iem16/src/tab16read~.d.31777
 delete mode 100644 externals/iem16/src/tab16read~.d.31846
 delete mode 100644 externals/iem16/src/tab16read~.d.32046
 delete mode 100644 externals/iem16/src/tab16read~.d.3207
 delete mode 100644 externals/iem16/src/tab16read~.d.32320
 delete mode 100644 externals/iem16/src/tab16read~.d.32382
 delete mode 100644 externals/iem16/src/tab16read~.d.32423
 delete mode 100644 externals/iem16/src/tab16read~.d.32503
 delete mode 100644 externals/iem16/src/tab16read~.d.32555
 delete mode 100644 externals/iem16/src/tab16read~.d.32612
 delete mode 100644 externals/iem16/src/tab16read~.d.3386
 delete mode 100644 externals/iem16/src/tab16read~.d.4125
 delete mode 100644 externals/iem16/src/tab16read~.d.4441
 delete mode 100644 externals/iem16/src/tab16read~.d.493
 delete mode 100644 externals/iem16/src/tab16read~.d.5027
 delete mode 100644 externals/iem16/src/tab16read~.d.5171
 delete mode 100644 externals/iem16/src/tab16read~.d.6608
 delete mode 100644 externals/iem16/src/tab16read~.d.6777
 delete mode 100644 externals/iem16/src/tab16read~.d.6819
 delete mode 100644 externals/iem16/src/tab16read~.d.6831
 delete mode 100644 externals/iem16/src/tab16read~.d.7412
 delete mode 100644 externals/iem16/src/tab16read~.d.802
 delete mode 100644 externals/iem16/src/tab16read~.d.8373
 delete mode 100644 externals/iem16/src/tab16read~.d.8374
 delete mode 100644 externals/iem16/src/tab16read~.d.8433
 delete mode 100644 externals/iem16/src/tab16read~.d.8613
 delete mode 100644 externals/iem16/src/tab16read~.d.8707
 delete mode 100644 externals/iem16/src/tab16read~.d.8793
 delete mode 100644 externals/iem16/src/tab16read~.d.9030
 delete mode 100644 externals/iem16/src/tab16read~.d.9109
 delete mode 100644 externals/iem16/src/tab16read~.d.9761
 delete mode 100644 externals/iem16/src/tab16receive~.d.10308
 delete mode 100644 externals/iem16/src/tab16receive~.d.10448
 delete mode 100644 externals/iem16/src/tab16receive~.d.10797
 delete mode 100644 externals/iem16/src/tab16receive~.d.11222
 delete mode 100644 externals/iem16/src/tab16receive~.d.11247
 delete mode 100644 externals/iem16/src/tab16receive~.d.11589
 delete mode 100644 externals/iem16/src/tab16receive~.d.11936
 delete mode 100644 externals/iem16/src/tab16receive~.d.12028
 delete mode 100644 externals/iem16/src/tab16receive~.d.12168
 delete mode 100644 externals/iem16/src/tab16receive~.d.12446
 delete mode 100644 externals/iem16/src/tab16receive~.d.12655
 delete mode 100644 externals/iem16/src/tab16receive~.d.12670
 delete mode 100644 externals/iem16/src/tab16receive~.d.12809
 delete mode 100644 externals/iem16/src/tab16receive~.d.1296
 delete mode 100644 externals/iem16/src/tab16receive~.d.13079
 delete mode 100644 externals/iem16/src/tab16receive~.d.13135
 delete mode 100644 externals/iem16/src/tab16receive~.d.13170
 delete mode 100644 externals/iem16/src/tab16receive~.d.13691
 delete mode 100644 externals/iem16/src/tab16receive~.d.13959
 delete mode 100644 externals/iem16/src/tab16receive~.d.14176
 delete mode 100644 externals/iem16/src/tab16receive~.d.14381
 delete mode 100644 externals/iem16/src/tab16receive~.d.14581
 delete mode 100644 externals/iem16/src/tab16receive~.d.14733
 delete mode 100644 externals/iem16/src/tab16receive~.d.14755
 delete mode 100644 externals/iem16/src/tab16receive~.d.14836
 delete mode 100644 externals/iem16/src/tab16receive~.d.15266
 delete mode 100644 externals/iem16/src/tab16receive~.d.15418
 delete mode 100644 externals/iem16/src/tab16receive~.d.15453
 delete mode 100644 externals/iem16/src/tab16receive~.d.1548
 delete mode 100644 externals/iem16/src/tab16receive~.d.15484
 delete mode 100644 externals/iem16/src/tab16receive~.d.15582
 delete mode 100644 externals/iem16/src/tab16receive~.d.15743
 delete mode 100644 externals/iem16/src/tab16receive~.d.1581
 delete mode 100644 externals/iem16/src/tab16receive~.d.16816
 delete mode 100644 externals/iem16/src/tab16receive~.d.16888
 delete mode 100644 externals/iem16/src/tab16receive~.d.17552
 delete mode 100644 externals/iem16/src/tab16receive~.d.17588
 delete mode 100644 externals/iem16/src/tab16receive~.d.17590
 delete mode 100644 externals/iem16/src/tab16receive~.d.17638
 delete mode 100644 externals/iem16/src/tab16receive~.d.17757
 delete mode 100644 externals/iem16/src/tab16receive~.d.17806
 delete mode 100644 externals/iem16/src/tab16receive~.d.1787
 delete mode 100644 externals/iem16/src/tab16receive~.d.18162
 delete mode 100644 externals/iem16/src/tab16receive~.d.18586
 delete mode 100644 externals/iem16/src/tab16receive~.d.19531
 delete mode 100644 externals/iem16/src/tab16receive~.d.19759
 delete mode 100644 externals/iem16/src/tab16receive~.d.20544
 delete mode 100644 externals/iem16/src/tab16receive~.d.20760
 delete mode 100644 externals/iem16/src/tab16receive~.d.20869
 delete mode 100644 externals/iem16/src/tab16receive~.d.21261
 delete mode 100644 externals/iem16/src/tab16receive~.d.21399
 delete mode 100644 externals/iem16/src/tab16receive~.d.21578
 delete mode 100644 externals/iem16/src/tab16receive~.d.21604
 delete mode 100644 externals/iem16/src/tab16receive~.d.21614
 delete mode 100644 externals/iem16/src/tab16receive~.d.21811
 delete mode 100644 externals/iem16/src/tab16receive~.d.21838
 delete mode 100644 externals/iem16/src/tab16receive~.d.21913
 delete mode 100644 externals/iem16/src/tab16receive~.d.23164
 delete mode 100644 externals/iem16/src/tab16receive~.d.23596
 delete mode 100644 externals/iem16/src/tab16receive~.d.23725
 delete mode 100644 externals/iem16/src/tab16receive~.d.2378
 delete mode 100644 externals/iem16/src/tab16receive~.d.23863
 delete mode 100644 externals/iem16/src/tab16receive~.d.23920
 delete mode 100644 externals/iem16/src/tab16receive~.d.23938
 delete mode 100644 externals/iem16/src/tab16receive~.d.2396
 delete mode 100644 externals/iem16/src/tab16receive~.d.24118
 delete mode 100644 externals/iem16/src/tab16receive~.d.24343
 delete mode 100644 externals/iem16/src/tab16receive~.d.24445
 delete mode 100644 externals/iem16/src/tab16receive~.d.24777
 delete mode 100644 externals/iem16/src/tab16receive~.d.2488
 delete mode 100644 externals/iem16/src/tab16receive~.d.24919
 delete mode 100644 externals/iem16/src/tab16receive~.d.2502
 delete mode 100644 externals/iem16/src/tab16receive~.d.25858
 delete mode 100644 externals/iem16/src/tab16receive~.d.25916
 delete mode 100644 externals/iem16/src/tab16receive~.d.26252
 delete mode 100644 externals/iem16/src/tab16receive~.d.26325
 delete mode 100644 externals/iem16/src/tab16receive~.d.27071
 delete mode 100644 externals/iem16/src/tab16receive~.d.27199
 delete mode 100644 externals/iem16/src/tab16receive~.d.27559
 delete mode 100644 externals/iem16/src/tab16receive~.d.27631
 delete mode 100644 externals/iem16/src/tab16receive~.d.27637
 delete mode 100644 externals/iem16/src/tab16receive~.d.27654
 delete mode 100644 externals/iem16/src/tab16receive~.d.27900
 delete mode 100644 externals/iem16/src/tab16receive~.d.27902
 delete mode 100644 externals/iem16/src/tab16receive~.d.27968
 delete mode 100644 externals/iem16/src/tab16receive~.d.28331
 delete mode 100644 externals/iem16/src/tab16receive~.d.2834
 delete mode 100644 externals/iem16/src/tab16receive~.d.2838
 delete mode 100644 externals/iem16/src/tab16receive~.d.28481
 delete mode 100644 externals/iem16/src/tab16receive~.d.28585
 delete mode 100644 externals/iem16/src/tab16receive~.d.28652
 delete mode 100644 externals/iem16/src/tab16receive~.d.28927
 delete mode 100644 externals/iem16/src/tab16receive~.d.28937
 delete mode 100644 externals/iem16/src/tab16receive~.d.29503
 delete mode 100644 externals/iem16/src/tab16receive~.d.29518
 delete mode 100644 externals/iem16/src/tab16receive~.d.2967
 delete mode 100644 externals/iem16/src/tab16receive~.d.29956
 delete mode 100644 externals/iem16/src/tab16receive~.d.30215
 delete mode 100644 externals/iem16/src/tab16receive~.d.30743
 delete mode 100644 externals/iem16/src/tab16receive~.d.30863
 delete mode 100644 externals/iem16/src/tab16receive~.d.30916
 delete mode 100644 externals/iem16/src/tab16receive~.d.31031
 delete mode 100644 externals/iem16/src/tab16receive~.d.31122
 delete mode 100644 externals/iem16/src/tab16receive~.d.31773
 delete mode 100644 externals/iem16/src/tab16receive~.d.31842
 delete mode 100644 externals/iem16/src/tab16receive~.d.3200
 delete mode 100644 externals/iem16/src/tab16receive~.d.32042
 delete mode 100644 externals/iem16/src/tab16receive~.d.32316
 delete mode 100644 externals/iem16/src/tab16receive~.d.32378
 delete mode 100644 externals/iem16/src/tab16receive~.d.32419
 delete mode 100644 externals/iem16/src/tab16receive~.d.32499
 delete mode 100644 externals/iem16/src/tab16receive~.d.32551
 delete mode 100644 externals/iem16/src/tab16receive~.d.32608
 delete mode 100644 externals/iem16/src/tab16receive~.d.3382
 delete mode 100644 externals/iem16/src/tab16receive~.d.4121
 delete mode 100644 externals/iem16/src/tab16receive~.d.4437
 delete mode 100644 externals/iem16/src/tab16receive~.d.489
 delete mode 100644 externals/iem16/src/tab16receive~.d.5023
 delete mode 100644 externals/iem16/src/tab16receive~.d.5167
 delete mode 100644 externals/iem16/src/tab16receive~.d.5691
 delete mode 100644 externals/iem16/src/tab16receive~.d.6320
 delete mode 100644 externals/iem16/src/tab16receive~.d.6604
 delete mode 100644 externals/iem16/src/tab16receive~.d.6773
 delete mode 100644 externals/iem16/src/tab16receive~.d.6815
 delete mode 100644 externals/iem16/src/tab16receive~.d.6827
 delete mode 100644 externals/iem16/src/tab16receive~.d.7408
 delete mode 100644 externals/iem16/src/tab16receive~.d.798
 delete mode 100644 externals/iem16/src/tab16receive~.d.8369
 delete mode 100644 externals/iem16/src/tab16receive~.d.8370
 delete mode 100644 externals/iem16/src/tab16receive~.d.8429
 delete mode 100644 externals/iem16/src/tab16receive~.d.8609
 delete mode 100644 externals/iem16/src/tab16receive~.d.8703
 delete mode 100644 externals/iem16/src/tab16receive~.d.8789
 delete mode 100644 externals/iem16/src/tab16receive~.d.9026
 delete mode 100644 externals/iem16/src/tab16receive~.d.9105
 delete mode 100644 externals/iem16/src/tab16receive~.d.9757
 delete mode 100644 externals/iem16/src/tab16send~.d.10304
 delete mode 100644 externals/iem16/src/tab16send~.d.10444
 delete mode 100644 externals/iem16/src/tab16send~.d.10793
 delete mode 100644 externals/iem16/src/tab16send~.d.11218
 delete mode 100644 externals/iem16/src/tab16send~.d.11243
 delete mode 100644 externals/iem16/src/tab16send~.d.11585
 delete mode 100644 externals/iem16/src/tab16send~.d.11932
 delete mode 100644 externals/iem16/src/tab16send~.d.12024
 delete mode 100644 externals/iem16/src/tab16send~.d.12164
 delete mode 100644 externals/iem16/src/tab16send~.d.12442
 delete mode 100644 externals/iem16/src/tab16send~.d.12651
 delete mode 100644 externals/iem16/src/tab16send~.d.12666
 delete mode 100644 externals/iem16/src/tab16send~.d.12805
 delete mode 100644 externals/iem16/src/tab16send~.d.1286
 delete mode 100644 externals/iem16/src/tab16send~.d.13075
 delete mode 100644 externals/iem16/src/tab16send~.d.13131
 delete mode 100644 externals/iem16/src/tab16send~.d.13166
 delete mode 100644 externals/iem16/src/tab16send~.d.13687
 delete mode 100644 externals/iem16/src/tab16send~.d.13955
 delete mode 100644 externals/iem16/src/tab16send~.d.14172
 delete mode 100644 externals/iem16/src/tab16send~.d.14377
 delete mode 100644 externals/iem16/src/tab16send~.d.14577
 delete mode 100644 externals/iem16/src/tab16send~.d.14729
 delete mode 100644 externals/iem16/src/tab16send~.d.14751
 delete mode 100644 externals/iem16/src/tab16send~.d.14832
 delete mode 100644 externals/iem16/src/tab16send~.d.15262
 delete mode 100644 externals/iem16/src/tab16send~.d.15414
 delete mode 100644 externals/iem16/src/tab16send~.d.1544
 delete mode 100644 externals/iem16/src/tab16send~.d.15449
 delete mode 100644 externals/iem16/src/tab16send~.d.15480
 delete mode 100644 externals/iem16/src/tab16send~.d.15578
 delete mode 100644 externals/iem16/src/tab16send~.d.15739
 delete mode 100644 externals/iem16/src/tab16send~.d.1577
 delete mode 100644 externals/iem16/src/tab16send~.d.16812
 delete mode 100644 externals/iem16/src/tab16send~.d.16884
 delete mode 100644 externals/iem16/src/tab16send~.d.17548
 delete mode 100644 externals/iem16/src/tab16send~.d.17584
 delete mode 100644 externals/iem16/src/tab16send~.d.17586
 delete mode 100644 externals/iem16/src/tab16send~.d.17634
 delete mode 100644 externals/iem16/src/tab16send~.d.17753
 delete mode 100644 externals/iem16/src/tab16send~.d.17802
 delete mode 100644 externals/iem16/src/tab16send~.d.1783
 delete mode 100644 externals/iem16/src/tab16send~.d.18158
 delete mode 100644 externals/iem16/src/tab16send~.d.18582
 delete mode 100644 externals/iem16/src/tab16send~.d.19527
 delete mode 100644 externals/iem16/src/tab16send~.d.19755
 delete mode 100644 externals/iem16/src/tab16send~.d.19980
 delete mode 100644 externals/iem16/src/tab16send~.d.20540
 delete mode 100644 externals/iem16/src/tab16send~.d.20756
 delete mode 100644 externals/iem16/src/tab16send~.d.20865
 delete mode 100644 externals/iem16/src/tab16send~.d.21257
 delete mode 100644 externals/iem16/src/tab16send~.d.21395
 delete mode 100644 externals/iem16/src/tab16send~.d.21574
 delete mode 100644 externals/iem16/src/tab16send~.d.21600
 delete mode 100644 externals/iem16/src/tab16send~.d.21610
 delete mode 100644 externals/iem16/src/tab16send~.d.21807
 delete mode 100644 externals/iem16/src/tab16send~.d.21834
 delete mode 100644 externals/iem16/src/tab16send~.d.21909
 delete mode 100644 externals/iem16/src/tab16send~.d.23160
 delete mode 100644 externals/iem16/src/tab16send~.d.23592
 delete mode 100644 externals/iem16/src/tab16send~.d.23721
 delete mode 100644 externals/iem16/src/tab16send~.d.2374
 delete mode 100644 externals/iem16/src/tab16send~.d.23859
 delete mode 100644 externals/iem16/src/tab16send~.d.23916
 delete mode 100644 externals/iem16/src/tab16send~.d.2392
 delete mode 100644 externals/iem16/src/tab16send~.d.23934
 delete mode 100644 externals/iem16/src/tab16send~.d.24114
 delete mode 100644 externals/iem16/src/tab16send~.d.24339
 delete mode 100644 externals/iem16/src/tab16send~.d.24441
 delete mode 100644 externals/iem16/src/tab16send~.d.24773
 delete mode 100644 externals/iem16/src/tab16send~.d.2484
 delete mode 100644 externals/iem16/src/tab16send~.d.24915
 delete mode 100644 externals/iem16/src/tab16send~.d.2498
 delete mode 100644 externals/iem16/src/tab16send~.d.25854
 delete mode 100644 externals/iem16/src/tab16send~.d.25912
 delete mode 100644 externals/iem16/src/tab16send~.d.26248
 delete mode 100644 externals/iem16/src/tab16send~.d.26321
 delete mode 100644 externals/iem16/src/tab16send~.d.27067
 delete mode 100644 externals/iem16/src/tab16send~.d.27195
 delete mode 100644 externals/iem16/src/tab16send~.d.27555
 delete mode 100644 externals/iem16/src/tab16send~.d.27627
 delete mode 100644 externals/iem16/src/tab16send~.d.27633
 delete mode 100644 externals/iem16/src/tab16send~.d.27650
 delete mode 100644 externals/iem16/src/tab16send~.d.27896
 delete mode 100644 externals/iem16/src/tab16send~.d.27898
 delete mode 100644 externals/iem16/src/tab16send~.d.27964
 delete mode 100644 externals/iem16/src/tab16send~.d.2830
 delete mode 100644 externals/iem16/src/tab16send~.d.28327
 delete mode 100644 externals/iem16/src/tab16send~.d.2834
 delete mode 100644 externals/iem16/src/tab16send~.d.28477
 delete mode 100644 externals/iem16/src/tab16send~.d.28581
 delete mode 100644 externals/iem16/src/tab16send~.d.28648
 delete mode 100644 externals/iem16/src/tab16send~.d.28923
 delete mode 100644 externals/iem16/src/tab16send~.d.28933
 delete mode 100644 externals/iem16/src/tab16send~.d.29498
 delete mode 100644 externals/iem16/src/tab16send~.d.29514
 delete mode 100644 externals/iem16/src/tab16send~.d.2963
 delete mode 100644 externals/iem16/src/tab16send~.d.29952
 delete mode 100644 externals/iem16/src/tab16send~.d.30211
 delete mode 100644 externals/iem16/src/tab16send~.d.30739
 delete mode 100644 externals/iem16/src/tab16send~.d.30859
 delete mode 100644 externals/iem16/src/tab16send~.d.30912
 delete mode 100644 externals/iem16/src/tab16send~.d.31027
 delete mode 100644 externals/iem16/src/tab16send~.d.31118
 delete mode 100644 externals/iem16/src/tab16send~.d.31769
 delete mode 100644 externals/iem16/src/tab16send~.d.31838
 delete mode 100644 externals/iem16/src/tab16send~.d.3196
 delete mode 100644 externals/iem16/src/tab16send~.d.32038
 delete mode 100644 externals/iem16/src/tab16send~.d.32312
 delete mode 100644 externals/iem16/src/tab16send~.d.32374
 delete mode 100644 externals/iem16/src/tab16send~.d.32415
 delete mode 100644 externals/iem16/src/tab16send~.d.32495
 delete mode 100644 externals/iem16/src/tab16send~.d.32547
 delete mode 100644 externals/iem16/src/tab16send~.d.32604
 delete mode 100644 externals/iem16/src/tab16send~.d.3378
 delete mode 100644 externals/iem16/src/tab16send~.d.4117
 delete mode 100644 externals/iem16/src/tab16send~.d.4433
 delete mode 100644 externals/iem16/src/tab16send~.d.485
 delete mode 100644 externals/iem16/src/tab16send~.d.5019
 delete mode 100644 externals/iem16/src/tab16send~.d.5163
 delete mode 100644 externals/iem16/src/tab16send~.d.5687
 delete mode 100644 externals/iem16/src/tab16send~.d.6316
 delete mode 100644 externals/iem16/src/tab16send~.d.6600
 delete mode 100644 externals/iem16/src/tab16send~.d.6769
 delete mode 100644 externals/iem16/src/tab16send~.d.6811
 delete mode 100644 externals/iem16/src/tab16send~.d.6823
 delete mode 100644 externals/iem16/src/tab16send~.d.7404
 delete mode 100644 externals/iem16/src/tab16send~.d.794
 delete mode 100644 externals/iem16/src/tab16send~.d.8365
 delete mode 100644 externals/iem16/src/tab16send~.d.8366
 delete mode 100644 externals/iem16/src/tab16send~.d.8425
 delete mode 100644 externals/iem16/src/tab16send~.d.8605
 delete mode 100644 externals/iem16/src/tab16send~.d.8699
 delete mode 100644 externals/iem16/src/tab16send~.d.8785
 delete mode 100644 externals/iem16/src/tab16send~.d.9022
 delete mode 100644 externals/iem16/src/tab16send~.d.9101
 delete mode 100644 externals/iem16/src/tab16send~.d.9753
 delete mode 100644 externals/iem16/src/tab16write.d.10300
 delete mode 100644 externals/iem16/src/tab16write.d.10440
 delete mode 100644 externals/iem16/src/tab16write.d.10789
 delete mode 100644 externals/iem16/src/tab16write.d.11214
 delete mode 100644 externals/iem16/src/tab16write.d.11239
 delete mode 100644 externals/iem16/src/tab16write.d.11581
 delete mode 100644 externals/iem16/src/tab16write.d.11928
 delete mode 100644 externals/iem16/src/tab16write.d.12020
 delete mode 100644 externals/iem16/src/tab16write.d.12160
 delete mode 100644 externals/iem16/src/tab16write.d.12438
 delete mode 100644 externals/iem16/src/tab16write.d.12647
 delete mode 100644 externals/iem16/src/tab16write.d.12662
 delete mode 100644 externals/iem16/src/tab16write.d.1268
 delete mode 100644 externals/iem16/src/tab16write.d.12801
 delete mode 100644 externals/iem16/src/tab16write.d.13071
 delete mode 100644 externals/iem16/src/tab16write.d.13127
 delete mode 100644 externals/iem16/src/tab16write.d.13162
 delete mode 100644 externals/iem16/src/tab16write.d.13683
 delete mode 100644 externals/iem16/src/tab16write.d.13951
 delete mode 100644 externals/iem16/src/tab16write.d.14168
 delete mode 100644 externals/iem16/src/tab16write.d.14373
 delete mode 100644 externals/iem16/src/tab16write.d.14573
 delete mode 100644 externals/iem16/src/tab16write.d.14725
 delete mode 100644 externals/iem16/src/tab16write.d.14747
 delete mode 100644 externals/iem16/src/tab16write.d.14828
 delete mode 100644 externals/iem16/src/tab16write.d.15258
 delete mode 100644 externals/iem16/src/tab16write.d.1540
 delete mode 100644 externals/iem16/src/tab16write.d.15410
 delete mode 100644 externals/iem16/src/tab16write.d.15445
 delete mode 100644 externals/iem16/src/tab16write.d.15476
 delete mode 100644 externals/iem16/src/tab16write.d.15574
 delete mode 100644 externals/iem16/src/tab16write.d.1573
 delete mode 100644 externals/iem16/src/tab16write.d.15735
 delete mode 100644 externals/iem16/src/tab16write.d.16808
 delete mode 100644 externals/iem16/src/tab16write.d.16880
 delete mode 100644 externals/iem16/src/tab16write.d.17544
 delete mode 100644 externals/iem16/src/tab16write.d.17580
 delete mode 100644 externals/iem16/src/tab16write.d.17582
 delete mode 100644 externals/iem16/src/tab16write.d.17630
 delete mode 100644 externals/iem16/src/tab16write.d.17749
 delete mode 100644 externals/iem16/src/tab16write.d.1779
 delete mode 100644 externals/iem16/src/tab16write.d.17798
 delete mode 100644 externals/iem16/src/tab16write.d.18154
 delete mode 100644 externals/iem16/src/tab16write.d.18578
 delete mode 100644 externals/iem16/src/tab16write.d.19523
 delete mode 100644 externals/iem16/src/tab16write.d.19751
 delete mode 100644 externals/iem16/src/tab16write.d.19976
 delete mode 100644 externals/iem16/src/tab16write.d.20536
 delete mode 100644 externals/iem16/src/tab16write.d.20752
 delete mode 100644 externals/iem16/src/tab16write.d.20861
 delete mode 100644 externals/iem16/src/tab16write.d.21253
 delete mode 100644 externals/iem16/src/tab16write.d.21391
 delete mode 100644 externals/iem16/src/tab16write.d.21570
 delete mode 100644 externals/iem16/src/tab16write.d.21596
 delete mode 100644 externals/iem16/src/tab16write.d.21606
 delete mode 100644 externals/iem16/src/tab16write.d.21803
 delete mode 100644 externals/iem16/src/tab16write.d.21830
 delete mode 100644 externals/iem16/src/tab16write.d.21905
 delete mode 100644 externals/iem16/src/tab16write.d.23156
 delete mode 100644 externals/iem16/src/tab16write.d.23588
 delete mode 100644 externals/iem16/src/tab16write.d.2370
 delete mode 100644 externals/iem16/src/tab16write.d.23717
 delete mode 100644 externals/iem16/src/tab16write.d.23855
 delete mode 100644 externals/iem16/src/tab16write.d.2388
 delete mode 100644 externals/iem16/src/tab16write.d.23912
 delete mode 100644 externals/iem16/src/tab16write.d.23930
 delete mode 100644 externals/iem16/src/tab16write.d.24107
 delete mode 100644 externals/iem16/src/tab16write.d.24335
 delete mode 100644 externals/iem16/src/tab16write.d.24437
 delete mode 100644 externals/iem16/src/tab16write.d.24769
 delete mode 100644 externals/iem16/src/tab16write.d.2480
 delete mode 100644 externals/iem16/src/tab16write.d.24911
 delete mode 100644 externals/iem16/src/tab16write.d.2494
 delete mode 100644 externals/iem16/src/tab16write.d.25908
 delete mode 100644 externals/iem16/src/tab16write.d.26244
 delete mode 100644 externals/iem16/src/tab16write.d.26317
 delete mode 100644 externals/iem16/src/tab16write.d.27063
 delete mode 100644 externals/iem16/src/tab16write.d.27191
 delete mode 100644 externals/iem16/src/tab16write.d.27551
 delete mode 100644 externals/iem16/src/tab16write.d.27623
 delete mode 100644 externals/iem16/src/tab16write.d.27629
 delete mode 100644 externals/iem16/src/tab16write.d.27646
 delete mode 100644 externals/iem16/src/tab16write.d.27892
 delete mode 100644 externals/iem16/src/tab16write.d.27894
 delete mode 100644 externals/iem16/src/tab16write.d.27960
 delete mode 100644 externals/iem16/src/tab16write.d.2826
 delete mode 100644 externals/iem16/src/tab16write.d.2830
 delete mode 100644 externals/iem16/src/tab16write.d.28323
 delete mode 100644 externals/iem16/src/tab16write.d.28473
 delete mode 100644 externals/iem16/src/tab16write.d.28577
 delete mode 100644 externals/iem16/src/tab16write.d.28644
 delete mode 100644 externals/iem16/src/tab16write.d.28919
 delete mode 100644 externals/iem16/src/tab16write.d.28929
 delete mode 100644 externals/iem16/src/tab16write.d.29494
 delete mode 100644 externals/iem16/src/tab16write.d.29510
 delete mode 100644 externals/iem16/src/tab16write.d.2959
 delete mode 100644 externals/iem16/src/tab16write.d.29948
 delete mode 100644 externals/iem16/src/tab16write.d.30207
 delete mode 100644 externals/iem16/src/tab16write.d.30735
 delete mode 100644 externals/iem16/src/tab16write.d.30855
 delete mode 100644 externals/iem16/src/tab16write.d.30908
 delete mode 100644 externals/iem16/src/tab16write.d.31023
 delete mode 100644 externals/iem16/src/tab16write.d.31114
 delete mode 100644 externals/iem16/src/tab16write.d.31765
 delete mode 100644 externals/iem16/src/tab16write.d.31834
 delete mode 100644 externals/iem16/src/tab16write.d.3191
 delete mode 100644 externals/iem16/src/tab16write.d.32034
 delete mode 100644 externals/iem16/src/tab16write.d.32308
 delete mode 100644 externals/iem16/src/tab16write.d.32370
 delete mode 100644 externals/iem16/src/tab16write.d.32411
 delete mode 100644 externals/iem16/src/tab16write.d.32491
 delete mode 100644 externals/iem16/src/tab16write.d.32543
 delete mode 100644 externals/iem16/src/tab16write.d.32600
 delete mode 100644 externals/iem16/src/tab16write.d.3374
 delete mode 100644 externals/iem16/src/tab16write.d.4113
 delete mode 100644 externals/iem16/src/tab16write.d.4429
 delete mode 100644 externals/iem16/src/tab16write.d.481
 delete mode 100644 externals/iem16/src/tab16write.d.5015
 delete mode 100644 externals/iem16/src/tab16write.d.5159
 delete mode 100644 externals/iem16/src/tab16write.d.5683
 delete mode 100644 externals/iem16/src/tab16write.d.6312
 delete mode 100644 externals/iem16/src/tab16write.d.6596
 delete mode 100644 externals/iem16/src/tab16write.d.6765
 delete mode 100644 externals/iem16/src/tab16write.d.6807
 delete mode 100644 externals/iem16/src/tab16write.d.6819
 delete mode 100644 externals/iem16/src/tab16write.d.7400
 delete mode 100644 externals/iem16/src/tab16write.d.790
 delete mode 100644 externals/iem16/src/tab16write.d.8361
 delete mode 100644 externals/iem16/src/tab16write.d.8362
 delete mode 100644 externals/iem16/src/tab16write.d.8421
 delete mode 100644 externals/iem16/src/tab16write.d.8601
 delete mode 100644 externals/iem16/src/tab16write.d.8695
 delete mode 100644 externals/iem16/src/tab16write.d.8781
 delete mode 100644 externals/iem16/src/tab16write.d.9018
 delete mode 100644 externals/iem16/src/tab16write.d.9097
 delete mode 100644 externals/iem16/src/tab16write.d.9749
 delete mode 100644 externals/iem16/src/tab16write~.d.10296
 delete mode 100644 externals/iem16/src/tab16write~.d.10436
 delete mode 100644 externals/iem16/src/tab16write~.d.10785
 delete mode 100644 externals/iem16/src/tab16write~.d.11210
 delete mode 100644 externals/iem16/src/tab16write~.d.11235
 delete mode 100644 externals/iem16/src/tab16write~.d.11577
 delete mode 100644 externals/iem16/src/tab16write~.d.11924
 delete mode 100644 externals/iem16/src/tab16write~.d.12016
 delete mode 100644 externals/iem16/src/tab16write~.d.12156
 delete mode 100644 externals/iem16/src/tab16write~.d.12434
 delete mode 100644 externals/iem16/src/tab16write~.d.1249
 delete mode 100644 externals/iem16/src/tab16write~.d.12643
 delete mode 100644 externals/iem16/src/tab16write~.d.12658
 delete mode 100644 externals/iem16/src/tab16write~.d.12797
 delete mode 100644 externals/iem16/src/tab16write~.d.13067
 delete mode 100644 externals/iem16/src/tab16write~.d.13123
 delete mode 100644 externals/iem16/src/tab16write~.d.13158
 delete mode 100644 externals/iem16/src/tab16write~.d.13679
 delete mode 100644 externals/iem16/src/tab16write~.d.13947
 delete mode 100644 externals/iem16/src/tab16write~.d.14164
 delete mode 100644 externals/iem16/src/tab16write~.d.14369
 delete mode 100644 externals/iem16/src/tab16write~.d.14569
 delete mode 100644 externals/iem16/src/tab16write~.d.14721
 delete mode 100644 externals/iem16/src/tab16write~.d.14743
 delete mode 100644 externals/iem16/src/tab16write~.d.14824
 delete mode 100644 externals/iem16/src/tab16write~.d.15254
 delete mode 100644 externals/iem16/src/tab16write~.d.1536
 delete mode 100644 externals/iem16/src/tab16write~.d.15406
 delete mode 100644 externals/iem16/src/tab16write~.d.15441
 delete mode 100644 externals/iem16/src/tab16write~.d.15472
 delete mode 100644 externals/iem16/src/tab16write~.d.15570
 delete mode 100644 externals/iem16/src/tab16write~.d.1569
 delete mode 100644 externals/iem16/src/tab16write~.d.15731
 delete mode 100644 externals/iem16/src/tab16write~.d.16804
 delete mode 100644 externals/iem16/src/tab16write~.d.16876
 delete mode 100644 externals/iem16/src/tab16write~.d.17540
 delete mode 100644 externals/iem16/src/tab16write~.d.17576
 delete mode 100644 externals/iem16/src/tab16write~.d.17578
 delete mode 100644 externals/iem16/src/tab16write~.d.17626
 delete mode 100644 externals/iem16/src/tab16write~.d.17745
 delete mode 100644 externals/iem16/src/tab16write~.d.1775
 delete mode 100644 externals/iem16/src/tab16write~.d.17794
 delete mode 100644 externals/iem16/src/tab16write~.d.18150
 delete mode 100644 externals/iem16/src/tab16write~.d.18574
 delete mode 100644 externals/iem16/src/tab16write~.d.19519
 delete mode 100644 externals/iem16/src/tab16write~.d.19747
 delete mode 100644 externals/iem16/src/tab16write~.d.19972
 delete mode 100644 externals/iem16/src/tab16write~.d.20532
 delete mode 100644 externals/iem16/src/tab16write~.d.20748
 delete mode 100644 externals/iem16/src/tab16write~.d.20857
 delete mode 100644 externals/iem16/src/tab16write~.d.21249
 delete mode 100644 externals/iem16/src/tab16write~.d.21387
 delete mode 100644 externals/iem16/src/tab16write~.d.21566
 delete mode 100644 externals/iem16/src/tab16write~.d.21592
 delete mode 100644 externals/iem16/src/tab16write~.d.21602
 delete mode 100644 externals/iem16/src/tab16write~.d.21799
 delete mode 100644 externals/iem16/src/tab16write~.d.21826
 delete mode 100644 externals/iem16/src/tab16write~.d.21901
 delete mode 100644 externals/iem16/src/tab16write~.d.23152
 delete mode 100644 externals/iem16/src/tab16write~.d.23584
 delete mode 100644 externals/iem16/src/tab16write~.d.2366
 delete mode 100644 externals/iem16/src/tab16write~.d.23713
 delete mode 100644 externals/iem16/src/tab16write~.d.2384
 delete mode 100644 externals/iem16/src/tab16write~.d.23851
 delete mode 100644 externals/iem16/src/tab16write~.d.23908
 delete mode 100644 externals/iem16/src/tab16write~.d.23926
 delete mode 100644 externals/iem16/src/tab16write~.d.24103
 delete mode 100644 externals/iem16/src/tab16write~.d.24331
 delete mode 100644 externals/iem16/src/tab16write~.d.24433
 delete mode 100644 externals/iem16/src/tab16write~.d.2476
 delete mode 100644 externals/iem16/src/tab16write~.d.24765
 delete mode 100644 externals/iem16/src/tab16write~.d.2490
 delete mode 100644 externals/iem16/src/tab16write~.d.24907
 delete mode 100644 externals/iem16/src/tab16write~.d.25846
 delete mode 100644 externals/iem16/src/tab16write~.d.25904
 delete mode 100644 externals/iem16/src/tab16write~.d.26240
 delete mode 100644 externals/iem16/src/tab16write~.d.26313
 delete mode 100644 externals/iem16/src/tab16write~.d.27059
 delete mode 100644 externals/iem16/src/tab16write~.d.27187
 delete mode 100644 externals/iem16/src/tab16write~.d.27547
 delete mode 100644 externals/iem16/src/tab16write~.d.27619
 delete mode 100644 externals/iem16/src/tab16write~.d.27625
 delete mode 100644 externals/iem16/src/tab16write~.d.27642
 delete mode 100644 externals/iem16/src/tab16write~.d.27888
 delete mode 100644 externals/iem16/src/tab16write~.d.27890
 delete mode 100644 externals/iem16/src/tab16write~.d.27956
 delete mode 100644 externals/iem16/src/tab16write~.d.2822
 delete mode 100644 externals/iem16/src/tab16write~.d.2826
 delete mode 100644 externals/iem16/src/tab16write~.d.28319
 delete mode 100644 externals/iem16/src/tab16write~.d.28469
 delete mode 100644 externals/iem16/src/tab16write~.d.28573
 delete mode 100644 externals/iem16/src/tab16write~.d.28640
 delete mode 100644 externals/iem16/src/tab16write~.d.28915
 delete mode 100644 externals/iem16/src/tab16write~.d.28925
 delete mode 100644 externals/iem16/src/tab16write~.d.29490
 delete mode 100644 externals/iem16/src/tab16write~.d.29506
 delete mode 100644 externals/iem16/src/tab16write~.d.2955
 delete mode 100644 externals/iem16/src/tab16write~.d.29944
 delete mode 100644 externals/iem16/src/tab16write~.d.30203
 delete mode 100644 externals/iem16/src/tab16write~.d.30731
 delete mode 100644 externals/iem16/src/tab16write~.d.30851
 delete mode 100644 externals/iem16/src/tab16write~.d.30904
 delete mode 100644 externals/iem16/src/tab16write~.d.31019
 delete mode 100644 externals/iem16/src/tab16write~.d.31110
 delete mode 100644 externals/iem16/src/tab16write~.d.31761
 delete mode 100644 externals/iem16/src/tab16write~.d.31830
 delete mode 100644 externals/iem16/src/tab16write~.d.3187
 delete mode 100644 externals/iem16/src/tab16write~.d.32030
 delete mode 100644 externals/iem16/src/tab16write~.d.32304
 delete mode 100644 externals/iem16/src/tab16write~.d.32366
 delete mode 100644 externals/iem16/src/tab16write~.d.32407
 delete mode 100644 externals/iem16/src/tab16write~.d.32487
 delete mode 100644 externals/iem16/src/tab16write~.d.32539
 delete mode 100644 externals/iem16/src/tab16write~.d.32596
 delete mode 100644 externals/iem16/src/tab16write~.d.3370
 delete mode 100644 externals/iem16/src/tab16write~.d.4109
 delete mode 100644 externals/iem16/src/tab16write~.d.4425
 delete mode 100644 externals/iem16/src/tab16write~.d.477
 delete mode 100644 externals/iem16/src/tab16write~.d.5011
 delete mode 100644 externals/iem16/src/tab16write~.d.5155
 delete mode 100644 externals/iem16/src/tab16write~.d.5679
 delete mode 100644 externals/iem16/src/tab16write~.d.6308
 delete mode 100644 externals/iem16/src/tab16write~.d.6592
 delete mode 100644 externals/iem16/src/tab16write~.d.6761
 delete mode 100644 externals/iem16/src/tab16write~.d.6803
 delete mode 100644 externals/iem16/src/tab16write~.d.6815
 delete mode 100644 externals/iem16/src/tab16write~.d.7396
 delete mode 100644 externals/iem16/src/tab16write~.d.786
 delete mode 100644 externals/iem16/src/tab16write~.d.8357
 delete mode 100644 externals/iem16/src/tab16write~.d.8358
 delete mode 100644 externals/iem16/src/tab16write~.d.8417
 delete mode 100644 externals/iem16/src/tab16write~.d.8597
 delete mode 100644 externals/iem16/src/tab16write~.d.8691
 delete mode 100644 externals/iem16/src/tab16write~.d.8777
 delete mode 100644 externals/iem16/src/tab16write~.d.9014
 delete mode 100644 externals/iem16/src/tab16write~.d.9093
 delete mode 100644 externals/iem16/src/tab16write~.d.9745
 delete mode 100644 externals/iem16/src/table16.d.10292
 delete mode 100644 externals/iem16/src/table16.d.10432
 delete mode 100644 externals/iem16/src/table16.d.10781
 delete mode 100644 externals/iem16/src/table16.d.11206
 delete mode 100644 externals/iem16/src/table16.d.11231
 delete mode 100644 externals/iem16/src/table16.d.11573
 delete mode 100644 externals/iem16/src/table16.d.11920
 delete mode 100644 externals/iem16/src/table16.d.12012
 delete mode 100644 externals/iem16/src/table16.d.12152
 delete mode 100644 externals/iem16/src/table16.d.1233
 delete mode 100644 externals/iem16/src/table16.d.12430
 delete mode 100644 externals/iem16/src/table16.d.12639
 delete mode 100644 externals/iem16/src/table16.d.12654
 delete mode 100644 externals/iem16/src/table16.d.12793
 delete mode 100644 externals/iem16/src/table16.d.13063
 delete mode 100644 externals/iem16/src/table16.d.13119
 delete mode 100644 externals/iem16/src/table16.d.13154
 delete mode 100644 externals/iem16/src/table16.d.13675
 delete mode 100644 externals/iem16/src/table16.d.13943
 delete mode 100644 externals/iem16/src/table16.d.14160
 delete mode 100644 externals/iem16/src/table16.d.14365
 delete mode 100644 externals/iem16/src/table16.d.14565
 delete mode 100644 externals/iem16/src/table16.d.14717
 delete mode 100644 externals/iem16/src/table16.d.14739
 delete mode 100644 externals/iem16/src/table16.d.14820
 delete mode 100644 externals/iem16/src/table16.d.15250
 delete mode 100644 externals/iem16/src/table16.d.1532
 delete mode 100644 externals/iem16/src/table16.d.15402
 delete mode 100644 externals/iem16/src/table16.d.15437
 delete mode 100644 externals/iem16/src/table16.d.15468
 delete mode 100644 externals/iem16/src/table16.d.15566
 delete mode 100644 externals/iem16/src/table16.d.1565
 delete mode 100644 externals/iem16/src/table16.d.15727
 delete mode 100644 externals/iem16/src/table16.d.16800
 delete mode 100644 externals/iem16/src/table16.d.16872
 delete mode 100644 externals/iem16/src/table16.d.17536
 delete mode 100644 externals/iem16/src/table16.d.17572
 delete mode 100644 externals/iem16/src/table16.d.17574
 delete mode 100644 externals/iem16/src/table16.d.17622
 delete mode 100644 externals/iem16/src/table16.d.1770
 delete mode 100644 externals/iem16/src/table16.d.17741
 delete mode 100644 externals/iem16/src/table16.d.17790
 delete mode 100644 externals/iem16/src/table16.d.18146
 delete mode 100644 externals/iem16/src/table16.d.18570
 delete mode 100644 externals/iem16/src/table16.d.19515
 delete mode 100644 externals/iem16/src/table16.d.19743
 delete mode 100644 externals/iem16/src/table16.d.19968
 delete mode 100644 externals/iem16/src/table16.d.20528
 delete mode 100644 externals/iem16/src/table16.d.20744
 delete mode 100644 externals/iem16/src/table16.d.20853
 delete mode 100644 externals/iem16/src/table16.d.21245
 delete mode 100644 externals/iem16/src/table16.d.21383
 delete mode 100644 externals/iem16/src/table16.d.21562
 delete mode 100644 externals/iem16/src/table16.d.21588
 delete mode 100644 externals/iem16/src/table16.d.21598
 delete mode 100644 externals/iem16/src/table16.d.21795
 delete mode 100644 externals/iem16/src/table16.d.21822
 delete mode 100644 externals/iem16/src/table16.d.21897
 delete mode 100644 externals/iem16/src/table16.d.23148
 delete mode 100644 externals/iem16/src/table16.d.23580
 delete mode 100644 externals/iem16/src/table16.d.2362
 delete mode 100644 externals/iem16/src/table16.d.23709
 delete mode 100644 externals/iem16/src/table16.d.2380
 delete mode 100644 externals/iem16/src/table16.d.23847
 delete mode 100644 externals/iem16/src/table16.d.23904
 delete mode 100644 externals/iem16/src/table16.d.23922
 delete mode 100644 externals/iem16/src/table16.d.24099
 delete mode 100644 externals/iem16/src/table16.d.24327
 delete mode 100644 externals/iem16/src/table16.d.24429
 delete mode 100644 externals/iem16/src/table16.d.2472
 delete mode 100644 externals/iem16/src/table16.d.24761
 delete mode 100644 externals/iem16/src/table16.d.2486
 delete mode 100644 externals/iem16/src/table16.d.24903
 delete mode 100644 externals/iem16/src/table16.d.25842
 delete mode 100644 externals/iem16/src/table16.d.25900
 delete mode 100644 externals/iem16/src/table16.d.26236
 delete mode 100644 externals/iem16/src/table16.d.26309
 delete mode 100644 externals/iem16/src/table16.d.27055
 delete mode 100644 externals/iem16/src/table16.d.27183
 delete mode 100644 externals/iem16/src/table16.d.27543
 delete mode 100644 externals/iem16/src/table16.d.27615
 delete mode 100644 externals/iem16/src/table16.d.27621
 delete mode 100644 externals/iem16/src/table16.d.27638
 delete mode 100644 externals/iem16/src/table16.d.27884
 delete mode 100644 externals/iem16/src/table16.d.27886
 delete mode 100644 externals/iem16/src/table16.d.27952
 delete mode 100644 externals/iem16/src/table16.d.2818
 delete mode 100644 externals/iem16/src/table16.d.2822
 delete mode 100644 externals/iem16/src/table16.d.28315
 delete mode 100644 externals/iem16/src/table16.d.28465
 delete mode 100644 externals/iem16/src/table16.d.28569
 delete mode 100644 externals/iem16/src/table16.d.28636
 delete mode 100644 externals/iem16/src/table16.d.28911
 delete mode 100644 externals/iem16/src/table16.d.28921
 delete mode 100644 externals/iem16/src/table16.d.29486
 delete mode 100644 externals/iem16/src/table16.d.29502
 delete mode 100644 externals/iem16/src/table16.d.2951
 delete mode 100644 externals/iem16/src/table16.d.29940
 delete mode 100644 externals/iem16/src/table16.d.30199
 delete mode 100644 externals/iem16/src/table16.d.30727
 delete mode 100644 externals/iem16/src/table16.d.30847
 delete mode 100644 externals/iem16/src/table16.d.30900
 delete mode 100644 externals/iem16/src/table16.d.31015
 delete mode 100644 externals/iem16/src/table16.d.31106
 delete mode 100644 externals/iem16/src/table16.d.31757
 delete mode 100644 externals/iem16/src/table16.d.31826
 delete mode 100644 externals/iem16/src/table16.d.3183
 delete mode 100644 externals/iem16/src/table16.d.32026
 delete mode 100644 externals/iem16/src/table16.d.32300
 delete mode 100644 externals/iem16/src/table16.d.32362
 delete mode 100644 externals/iem16/src/table16.d.32403
 delete mode 100644 externals/iem16/src/table16.d.32483
 delete mode 100644 externals/iem16/src/table16.d.32535
 delete mode 100644 externals/iem16/src/table16.d.32592
 delete mode 100644 externals/iem16/src/table16.d.3366
 delete mode 100644 externals/iem16/src/table16.d.4105
 delete mode 100644 externals/iem16/src/table16.d.473
 delete mode 100644 externals/iem16/src/table16.d.5007
 delete mode 100644 externals/iem16/src/table16.d.5151
 delete mode 100644 externals/iem16/src/table16.d.5675
 delete mode 100644 externals/iem16/src/table16.d.6304
 delete mode 100644 externals/iem16/src/table16.d.6588
 delete mode 100644 externals/iem16/src/table16.d.6757
 delete mode 100644 externals/iem16/src/table16.d.6799
 delete mode 100644 externals/iem16/src/table16.d.6811
 delete mode 100644 externals/iem16/src/table16.d.7392
 delete mode 100644 externals/iem16/src/table16.d.782
 delete mode 100644 externals/iem16/src/table16.d.8353
 delete mode 100644 externals/iem16/src/table16.d.8354
 delete mode 100644 externals/iem16/src/table16.d.8413
 delete mode 100644 externals/iem16/src/table16.d.8593
 delete mode 100644 externals/iem16/src/table16.d.8687
 delete mode 100644 externals/iem16/src/table16.d.8773
 delete mode 100644 externals/iem16/src/table16.d.9010
 delete mode 100644 externals/iem16/src/table16.d.9089
 delete mode 100644 externals/iem16/src/table16.d.9741
 delete mode 100644 externals/iem16/src/vd16~.d.10288
 delete mode 100644 externals/iem16/src/vd16~.d.10428
 delete mode 100644 externals/iem16/src/vd16~.d.10777
 delete mode 100644 externals/iem16/src/vd16~.d.11202
 delete mode 100644 externals/iem16/src/vd16~.d.11227
 delete mode 100644 externals/iem16/src/vd16~.d.11569
 delete mode 100644 externals/iem16/src/vd16~.d.11916
 delete mode 100644 externals/iem16/src/vd16~.d.12008
 delete mode 100644 externals/iem16/src/vd16~.d.12148
 delete mode 100644 externals/iem16/src/vd16~.d.1223
 delete mode 100644 externals/iem16/src/vd16~.d.12426
 delete mode 100644 externals/iem16/src/vd16~.d.12635
 delete mode 100644 externals/iem16/src/vd16~.d.12650
 delete mode 100644 externals/iem16/src/vd16~.d.12789
 delete mode 100644 externals/iem16/src/vd16~.d.13059
 delete mode 100644 externals/iem16/src/vd16~.d.13115
 delete mode 100644 externals/iem16/src/vd16~.d.13150
 delete mode 100644 externals/iem16/src/vd16~.d.13671
 delete mode 100644 externals/iem16/src/vd16~.d.13939
 delete mode 100644 externals/iem16/src/vd16~.d.14156
 delete mode 100644 externals/iem16/src/vd16~.d.14361
 delete mode 100644 externals/iem16/src/vd16~.d.14561
 delete mode 100644 externals/iem16/src/vd16~.d.14713
 delete mode 100644 externals/iem16/src/vd16~.d.14735
 delete mode 100644 externals/iem16/src/vd16~.d.14816
 delete mode 100644 externals/iem16/src/vd16~.d.15246
 delete mode 100644 externals/iem16/src/vd16~.d.1528
 delete mode 100644 externals/iem16/src/vd16~.d.15398
 delete mode 100644 externals/iem16/src/vd16~.d.15433
 delete mode 100644 externals/iem16/src/vd16~.d.15464
 delete mode 100644 externals/iem16/src/vd16~.d.15562
 delete mode 100644 externals/iem16/src/vd16~.d.1561
 delete mode 100644 externals/iem16/src/vd16~.d.15723
 delete mode 100644 externals/iem16/src/vd16~.d.16796
 delete mode 100644 externals/iem16/src/vd16~.d.16868
 delete mode 100644 externals/iem16/src/vd16~.d.17532
 delete mode 100644 externals/iem16/src/vd16~.d.17568
 delete mode 100644 externals/iem16/src/vd16~.d.17570
 delete mode 100644 externals/iem16/src/vd16~.d.17618
 delete mode 100644 externals/iem16/src/vd16~.d.1766
 delete mode 100644 externals/iem16/src/vd16~.d.17737
 delete mode 100644 externals/iem16/src/vd16~.d.17786
 delete mode 100644 externals/iem16/src/vd16~.d.18142
 delete mode 100644 externals/iem16/src/vd16~.d.18566
 delete mode 100644 externals/iem16/src/vd16~.d.19511
 delete mode 100644 externals/iem16/src/vd16~.d.19739
 delete mode 100644 externals/iem16/src/vd16~.d.19964
 delete mode 100644 externals/iem16/src/vd16~.d.20524
 delete mode 100644 externals/iem16/src/vd16~.d.20740
 delete mode 100644 externals/iem16/src/vd16~.d.20849
 delete mode 100644 externals/iem16/src/vd16~.d.21241
 delete mode 100644 externals/iem16/src/vd16~.d.21379
 delete mode 100644 externals/iem16/src/vd16~.d.21558
 delete mode 100644 externals/iem16/src/vd16~.d.21584
 delete mode 100644 externals/iem16/src/vd16~.d.21594
 delete mode 100644 externals/iem16/src/vd16~.d.21791
 delete mode 100644 externals/iem16/src/vd16~.d.21818
 delete mode 100644 externals/iem16/src/vd16~.d.21893
 delete mode 100644 externals/iem16/src/vd16~.d.23144
 delete mode 100644 externals/iem16/src/vd16~.d.23576
 delete mode 100644 externals/iem16/src/vd16~.d.2358
 delete mode 100644 externals/iem16/src/vd16~.d.23705
 delete mode 100644 externals/iem16/src/vd16~.d.2376
 delete mode 100644 externals/iem16/src/vd16~.d.23843
 delete mode 100644 externals/iem16/src/vd16~.d.23900
 delete mode 100644 externals/iem16/src/vd16~.d.23918
 delete mode 100644 externals/iem16/src/vd16~.d.24095
 delete mode 100644 externals/iem16/src/vd16~.d.24323
 delete mode 100644 externals/iem16/src/vd16~.d.24425
 delete mode 100644 externals/iem16/src/vd16~.d.2467
 delete mode 100644 externals/iem16/src/vd16~.d.24757
 delete mode 100644 externals/iem16/src/vd16~.d.2482
 delete mode 100644 externals/iem16/src/vd16~.d.24899
 delete mode 100644 externals/iem16/src/vd16~.d.25838
 delete mode 100644 externals/iem16/src/vd16~.d.25896
 delete mode 100644 externals/iem16/src/vd16~.d.26232
 delete mode 100644 externals/iem16/src/vd16~.d.26305
 delete mode 100644 externals/iem16/src/vd16~.d.27051
 delete mode 100644 externals/iem16/src/vd16~.d.27179
 delete mode 100644 externals/iem16/src/vd16~.d.27539
 delete mode 100644 externals/iem16/src/vd16~.d.27611
 delete mode 100644 externals/iem16/src/vd16~.d.27617
 delete mode 100644 externals/iem16/src/vd16~.d.27634
 delete mode 100644 externals/iem16/src/vd16~.d.27880
 delete mode 100644 externals/iem16/src/vd16~.d.27882
 delete mode 100644 externals/iem16/src/vd16~.d.27948
 delete mode 100644 externals/iem16/src/vd16~.d.2814
 delete mode 100644 externals/iem16/src/vd16~.d.2818
 delete mode 100644 externals/iem16/src/vd16~.d.28311
 delete mode 100644 externals/iem16/src/vd16~.d.28461
 delete mode 100644 externals/iem16/src/vd16~.d.28565
 delete mode 100644 externals/iem16/src/vd16~.d.28632
 delete mode 100644 externals/iem16/src/vd16~.d.28907
 delete mode 100644 externals/iem16/src/vd16~.d.28917
 delete mode 100644 externals/iem16/src/vd16~.d.2947
 delete mode 100644 externals/iem16/src/vd16~.d.29482
 delete mode 100644 externals/iem16/src/vd16~.d.29498
 delete mode 100644 externals/iem16/src/vd16~.d.29936
 delete mode 100644 externals/iem16/src/vd16~.d.30195
 delete mode 100644 externals/iem16/src/vd16~.d.30723
 delete mode 100644 externals/iem16/src/vd16~.d.30843
 delete mode 100644 externals/iem16/src/vd16~.d.30896
 delete mode 100644 externals/iem16/src/vd16~.d.31011
 delete mode 100644 externals/iem16/src/vd16~.d.31102
 delete mode 100644 externals/iem16/src/vd16~.d.31753
 delete mode 100644 externals/iem16/src/vd16~.d.3179
 delete mode 100644 externals/iem16/src/vd16~.d.31822
 delete mode 100644 externals/iem16/src/vd16~.d.32022
 delete mode 100644 externals/iem16/src/vd16~.d.32296
 delete mode 100644 externals/iem16/src/vd16~.d.32358
 delete mode 100644 externals/iem16/src/vd16~.d.32399
 delete mode 100644 externals/iem16/src/vd16~.d.32479
 delete mode 100644 externals/iem16/src/vd16~.d.32531
 delete mode 100644 externals/iem16/src/vd16~.d.32588
 delete mode 100644 externals/iem16/src/vd16~.d.3362
 delete mode 100644 externals/iem16/src/vd16~.d.4101
 delete mode 100644 externals/iem16/src/vd16~.d.4417
 delete mode 100644 externals/iem16/src/vd16~.d.469
 delete mode 100644 externals/iem16/src/vd16~.d.5003
 delete mode 100644 externals/iem16/src/vd16~.d.5147
 delete mode 100644 externals/iem16/src/vd16~.d.5671
 delete mode 100644 externals/iem16/src/vd16~.d.6300
 delete mode 100644 externals/iem16/src/vd16~.d.6584
 delete mode 100644 externals/iem16/src/vd16~.d.6753
 delete mode 100644 externals/iem16/src/vd16~.d.6795
 delete mode 100644 externals/iem16/src/vd16~.d.6807
 delete mode 100644 externals/iem16/src/vd16~.d.7388
 delete mode 100644 externals/iem16/src/vd16~.d.778
 delete mode 100644 externals/iem16/src/vd16~.d.8349
 delete mode 100644 externals/iem16/src/vd16~.d.8350
 delete mode 100644 externals/iem16/src/vd16~.d.8409
 delete mode 100644 externals/iem16/src/vd16~.d.8589
 delete mode 100644 externals/iem16/src/vd16~.d.8683
 delete mode 100644 externals/iem16/src/vd16~.d.8769
 delete mode 100644 externals/iem16/src/vd16~.d.9006
 delete mode 100644 externals/iem16/src/vd16~.d.9085
 delete mode 100644 externals/iem16/src/vd16~.d.9737

diff --git a/externals/iem16/src/del16read~.d.10336 b/externals/iem16/src/del16read~.d.10336
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.10476 b/externals/iem16/src/del16read~.d.10476
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.10825 b/externals/iem16/src/del16read~.d.10825
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.11250 b/externals/iem16/src/del16read~.d.11250
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.11275 b/externals/iem16/src/del16read~.d.11275
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.11617 b/externals/iem16/src/del16read~.d.11617
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.11964 b/externals/iem16/src/del16read~.d.11964
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.12056 b/externals/iem16/src/del16read~.d.12056
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.12196 b/externals/iem16/src/del16read~.d.12196
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.12474 b/externals/iem16/src/del16read~.d.12474
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.12683 b/externals/iem16/src/del16read~.d.12683
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.12698 b/externals/iem16/src/del16read~.d.12698
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.12837 b/externals/iem16/src/del16read~.d.12837
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.13107 b/externals/iem16/src/del16read~.d.13107
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.13163 b/externals/iem16/src/del16read~.d.13163
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.13198 b/externals/iem16/src/del16read~.d.13198
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.13719 b/externals/iem16/src/del16read~.d.13719
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.1390 b/externals/iem16/src/del16read~.d.1390
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.13987 b/externals/iem16/src/del16read~.d.13987
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.14204 b/externals/iem16/src/del16read~.d.14204
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.14409 b/externals/iem16/src/del16read~.d.14409
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.14609 b/externals/iem16/src/del16read~.d.14609
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.14761 b/externals/iem16/src/del16read~.d.14761
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.14783 b/externals/iem16/src/del16read~.d.14783
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.14864 b/externals/iem16/src/del16read~.d.14864
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.15294 b/externals/iem16/src/del16read~.d.15294
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.15446 b/externals/iem16/src/del16read~.d.15446
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.15481 b/externals/iem16/src/del16read~.d.15481
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.15512 b/externals/iem16/src/del16read~.d.15512
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.15610 b/externals/iem16/src/del16read~.d.15610
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.1576 b/externals/iem16/src/del16read~.d.1576
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.15771 b/externals/iem16/src/del16read~.d.15771
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.1609 b/externals/iem16/src/del16read~.d.1609
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.16844 b/externals/iem16/src/del16read~.d.16844
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.16916 b/externals/iem16/src/del16read~.d.16916
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.17580 b/externals/iem16/src/del16read~.d.17580
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.17616 b/externals/iem16/src/del16read~.d.17616
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.17618 b/externals/iem16/src/del16read~.d.17618
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.17666 b/externals/iem16/src/del16read~.d.17666
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.17785 b/externals/iem16/src/del16read~.d.17785
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.17834 b/externals/iem16/src/del16read~.d.17834
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.1816 b/externals/iem16/src/del16read~.d.1816
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.18190 b/externals/iem16/src/del16read~.d.18190
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.18614 b/externals/iem16/src/del16read~.d.18614
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.19559 b/externals/iem16/src/del16read~.d.19559
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.19787 b/externals/iem16/src/del16read~.d.19787
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.20012 b/externals/iem16/src/del16read~.d.20012
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.20572 b/externals/iem16/src/del16read~.d.20572
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.20788 b/externals/iem16/src/del16read~.d.20788
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.20897 b/externals/iem16/src/del16read~.d.20897
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.21289 b/externals/iem16/src/del16read~.d.21289
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.21427 b/externals/iem16/src/del16read~.d.21427
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.21606 b/externals/iem16/src/del16read~.d.21606
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.21632 b/externals/iem16/src/del16read~.d.21632
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.21642 b/externals/iem16/src/del16read~.d.21642
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.21839 b/externals/iem16/src/del16read~.d.21839
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.21866 b/externals/iem16/src/del16read~.d.21866
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.21941 b/externals/iem16/src/del16read~.d.21941
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.23192 b/externals/iem16/src/del16read~.d.23192
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.23624 b/externals/iem16/src/del16read~.d.23624
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.23753 b/externals/iem16/src/del16read~.d.23753
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.23891 b/externals/iem16/src/del16read~.d.23891
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.23948 b/externals/iem16/src/del16read~.d.23948
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.23966 b/externals/iem16/src/del16read~.d.23966
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.2406 b/externals/iem16/src/del16read~.d.2406
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.24146 b/externals/iem16/src/del16read~.d.24146
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.2424 b/externals/iem16/src/del16read~.d.2424
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.24371 b/externals/iem16/src/del16read~.d.24371
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.24473 b/externals/iem16/src/del16read~.d.24473
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.24805 b/externals/iem16/src/del16read~.d.24805
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.24947 b/externals/iem16/src/del16read~.d.24947
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.2518 b/externals/iem16/src/del16read~.d.2518
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.2530 b/externals/iem16/src/del16read~.d.2530
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.25886 b/externals/iem16/src/del16read~.d.25886
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.25944 b/externals/iem16/src/del16read~.d.25944
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.26280 b/externals/iem16/src/del16read~.d.26280
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.26353 b/externals/iem16/src/del16read~.d.26353
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.27099 b/externals/iem16/src/del16read~.d.27099
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.27227 b/externals/iem16/src/del16read~.d.27227
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.27587 b/externals/iem16/src/del16read~.d.27587
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.27659 b/externals/iem16/src/del16read~.d.27659
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.27665 b/externals/iem16/src/del16read~.d.27665
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.27682 b/externals/iem16/src/del16read~.d.27682
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.27928 b/externals/iem16/src/del16read~.d.27928
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.27930 b/externals/iem16/src/del16read~.d.27930
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.27996 b/externals/iem16/src/del16read~.d.27996
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.28359 b/externals/iem16/src/del16read~.d.28359
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.28509 b/externals/iem16/src/del16read~.d.28509
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.28613 b/externals/iem16/src/del16read~.d.28613
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.2863 b/externals/iem16/src/del16read~.d.2863
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.2867 b/externals/iem16/src/del16read~.d.2867
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.28680 b/externals/iem16/src/del16read~.d.28680
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.28955 b/externals/iem16/src/del16read~.d.28955
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.28965 b/externals/iem16/src/del16read~.d.28965
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.29538 b/externals/iem16/src/del16read~.d.29538
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.29546 b/externals/iem16/src/del16read~.d.29546
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.2996 b/externals/iem16/src/del16read~.d.2996
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.29984 b/externals/iem16/src/del16read~.d.29984
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.30243 b/externals/iem16/src/del16read~.d.30243
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.30771 b/externals/iem16/src/del16read~.d.30771
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.30891 b/externals/iem16/src/del16read~.d.30891
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.30944 b/externals/iem16/src/del16read~.d.30944
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.31059 b/externals/iem16/src/del16read~.d.31059
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.31150 b/externals/iem16/src/del16read~.d.31150
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.31801 b/externals/iem16/src/del16read~.d.31801
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.31870 b/externals/iem16/src/del16read~.d.31870
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.32070 b/externals/iem16/src/del16read~.d.32070
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.32344 b/externals/iem16/src/del16read~.d.32344
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.32406 b/externals/iem16/src/del16read~.d.32406
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.32447 b/externals/iem16/src/del16read~.d.32447
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.3246 b/externals/iem16/src/del16read~.d.3246
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.32527 b/externals/iem16/src/del16read~.d.32527
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.32579 b/externals/iem16/src/del16read~.d.32579
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.32636 b/externals/iem16/src/del16read~.d.32636
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.3410 b/externals/iem16/src/del16read~.d.3410
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.4149 b/externals/iem16/src/del16read~.d.4149
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.4465 b/externals/iem16/src/del16read~.d.4465
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.5051 b/externals/iem16/src/del16read~.d.5051
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.517 b/externals/iem16/src/del16read~.d.517
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.5195 b/externals/iem16/src/del16read~.d.5195
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.5719 b/externals/iem16/src/del16read~.d.5719
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.6348 b/externals/iem16/src/del16read~.d.6348
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.6632 b/externals/iem16/src/del16read~.d.6632
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.6801 b/externals/iem16/src/del16read~.d.6801
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.6843 b/externals/iem16/src/del16read~.d.6843
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.6855 b/externals/iem16/src/del16read~.d.6855
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.7436 b/externals/iem16/src/del16read~.d.7436
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.827 b/externals/iem16/src/del16read~.d.827
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.8397 b/externals/iem16/src/del16read~.d.8397
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.8398 b/externals/iem16/src/del16read~.d.8398
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.8457 b/externals/iem16/src/del16read~.d.8457
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.8637 b/externals/iem16/src/del16read~.d.8637
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.8731 b/externals/iem16/src/del16read~.d.8731
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.8817 b/externals/iem16/src/del16read~.d.8817
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.9054 b/externals/iem16/src/del16read~.d.9054
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.9133 b/externals/iem16/src/del16read~.d.9133
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16read~.d.9785 b/externals/iem16/src/del16read~.d.9785
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.10332 b/externals/iem16/src/del16write~.d.10332
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.10472 b/externals/iem16/src/del16write~.d.10472
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.10821 b/externals/iem16/src/del16write~.d.10821
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.11246 b/externals/iem16/src/del16write~.d.11246
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.11271 b/externals/iem16/src/del16write~.d.11271
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.11613 b/externals/iem16/src/del16write~.d.11613
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.11960 b/externals/iem16/src/del16write~.d.11960
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.12052 b/externals/iem16/src/del16write~.d.12052
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.12192 b/externals/iem16/src/del16write~.d.12192
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.12470 b/externals/iem16/src/del16write~.d.12470
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.12679 b/externals/iem16/src/del16write~.d.12679
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.12694 b/externals/iem16/src/del16write~.d.12694
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.12833 b/externals/iem16/src/del16write~.d.12833
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.13103 b/externals/iem16/src/del16write~.d.13103
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.13159 b/externals/iem16/src/del16write~.d.13159
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.13194 b/externals/iem16/src/del16write~.d.13194
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.13715 b/externals/iem16/src/del16write~.d.13715
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.1378 b/externals/iem16/src/del16write~.d.1378
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.13983 b/externals/iem16/src/del16write~.d.13983
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.14200 b/externals/iem16/src/del16write~.d.14200
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.14405 b/externals/iem16/src/del16write~.d.14405
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.14605 b/externals/iem16/src/del16write~.d.14605
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.14757 b/externals/iem16/src/del16write~.d.14757
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.14779 b/externals/iem16/src/del16write~.d.14779
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.14860 b/externals/iem16/src/del16write~.d.14860
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.15290 b/externals/iem16/src/del16write~.d.15290
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.15442 b/externals/iem16/src/del16write~.d.15442
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.15477 b/externals/iem16/src/del16write~.d.15477
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.15508 b/externals/iem16/src/del16write~.d.15508
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.15606 b/externals/iem16/src/del16write~.d.15606
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.1572 b/externals/iem16/src/del16write~.d.1572
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.15767 b/externals/iem16/src/del16write~.d.15767
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.1605 b/externals/iem16/src/del16write~.d.1605
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.16840 b/externals/iem16/src/del16write~.d.16840
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.16912 b/externals/iem16/src/del16write~.d.16912
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.17576 b/externals/iem16/src/del16write~.d.17576
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.17612 b/externals/iem16/src/del16write~.d.17612
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.17614 b/externals/iem16/src/del16write~.d.17614
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.17662 b/externals/iem16/src/del16write~.d.17662
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.17781 b/externals/iem16/src/del16write~.d.17781
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.17830 b/externals/iem16/src/del16write~.d.17830
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.1812 b/externals/iem16/src/del16write~.d.1812
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.18186 b/externals/iem16/src/del16write~.d.18186
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.18610 b/externals/iem16/src/del16write~.d.18610
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.19555 b/externals/iem16/src/del16write~.d.19555
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.19783 b/externals/iem16/src/del16write~.d.19783
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.20008 b/externals/iem16/src/del16write~.d.20008
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.20568 b/externals/iem16/src/del16write~.d.20568
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.20784 b/externals/iem16/src/del16write~.d.20784
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.20893 b/externals/iem16/src/del16write~.d.20893
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.21285 b/externals/iem16/src/del16write~.d.21285
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.21423 b/externals/iem16/src/del16write~.d.21423
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.21602 b/externals/iem16/src/del16write~.d.21602
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.21628 b/externals/iem16/src/del16write~.d.21628
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.21638 b/externals/iem16/src/del16write~.d.21638
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.21835 b/externals/iem16/src/del16write~.d.21835
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.21862 b/externals/iem16/src/del16write~.d.21862
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.21937 b/externals/iem16/src/del16write~.d.21937
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.23188 b/externals/iem16/src/del16write~.d.23188
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.23620 b/externals/iem16/src/del16write~.d.23620
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.23749 b/externals/iem16/src/del16write~.d.23749
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.23887 b/externals/iem16/src/del16write~.d.23887
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.23944 b/externals/iem16/src/del16write~.d.23944
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.23962 b/externals/iem16/src/del16write~.d.23962
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.2402 b/externals/iem16/src/del16write~.d.2402
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.24142 b/externals/iem16/src/del16write~.d.24142
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.2420 b/externals/iem16/src/del16write~.d.2420
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.24367 b/externals/iem16/src/del16write~.d.24367
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.24469 b/externals/iem16/src/del16write~.d.24469
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.24801 b/externals/iem16/src/del16write~.d.24801
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.24943 b/externals/iem16/src/del16write~.d.24943
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.2514 b/externals/iem16/src/del16write~.d.2514
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.2526 b/externals/iem16/src/del16write~.d.2526
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.25882 b/externals/iem16/src/del16write~.d.25882
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.25940 b/externals/iem16/src/del16write~.d.25940
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.26276 b/externals/iem16/src/del16write~.d.26276
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.26349 b/externals/iem16/src/del16write~.d.26349
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.27095 b/externals/iem16/src/del16write~.d.27095
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.27223 b/externals/iem16/src/del16write~.d.27223
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.27583 b/externals/iem16/src/del16write~.d.27583
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.27655 b/externals/iem16/src/del16write~.d.27655
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.27661 b/externals/iem16/src/del16write~.d.27661
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.27678 b/externals/iem16/src/del16write~.d.27678
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.27924 b/externals/iem16/src/del16write~.d.27924
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.27926 b/externals/iem16/src/del16write~.d.27926
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.27992 b/externals/iem16/src/del16write~.d.27992
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.28355 b/externals/iem16/src/del16write~.d.28355
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.28505 b/externals/iem16/src/del16write~.d.28505
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.2859 b/externals/iem16/src/del16write~.d.2859
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.28609 b/externals/iem16/src/del16write~.d.28609
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.2862 b/externals/iem16/src/del16write~.d.2862
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.28676 b/externals/iem16/src/del16write~.d.28676
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.28951 b/externals/iem16/src/del16write~.d.28951
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.28961 b/externals/iem16/src/del16write~.d.28961
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.29534 b/externals/iem16/src/del16write~.d.29534
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.29542 b/externals/iem16/src/del16write~.d.29542
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.2992 b/externals/iem16/src/del16write~.d.2992
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.29980 b/externals/iem16/src/del16write~.d.29980
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.30239 b/externals/iem16/src/del16write~.d.30239
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.30767 b/externals/iem16/src/del16write~.d.30767
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.30887 b/externals/iem16/src/del16write~.d.30887
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.30940 b/externals/iem16/src/del16write~.d.30940
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.31055 b/externals/iem16/src/del16write~.d.31055
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.31146 b/externals/iem16/src/del16write~.d.31146
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.31797 b/externals/iem16/src/del16write~.d.31797
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.31866 b/externals/iem16/src/del16write~.d.31866
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.32066 b/externals/iem16/src/del16write~.d.32066
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.32340 b/externals/iem16/src/del16write~.d.32340
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.3240 b/externals/iem16/src/del16write~.d.3240
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.32402 b/externals/iem16/src/del16write~.d.32402
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.32443 b/externals/iem16/src/del16write~.d.32443
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.32523 b/externals/iem16/src/del16write~.d.32523
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.32575 b/externals/iem16/src/del16write~.d.32575
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.32632 b/externals/iem16/src/del16write~.d.32632
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.3406 b/externals/iem16/src/del16write~.d.3406
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.4145 b/externals/iem16/src/del16write~.d.4145
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.4461 b/externals/iem16/src/del16write~.d.4461
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.5047 b/externals/iem16/src/del16write~.d.5047
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.513 b/externals/iem16/src/del16write~.d.513
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.5191 b/externals/iem16/src/del16write~.d.5191
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.5715 b/externals/iem16/src/del16write~.d.5715
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.6344 b/externals/iem16/src/del16write~.d.6344
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.6628 b/externals/iem16/src/del16write~.d.6628
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.6797 b/externals/iem16/src/del16write~.d.6797
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.6839 b/externals/iem16/src/del16write~.d.6839
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.6851 b/externals/iem16/src/del16write~.d.6851
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.7432 b/externals/iem16/src/del16write~.d.7432
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.823 b/externals/iem16/src/del16write~.d.823
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.8393 b/externals/iem16/src/del16write~.d.8393
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.8394 b/externals/iem16/src/del16write~.d.8394
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.8453 b/externals/iem16/src/del16write~.d.8453
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.8633 b/externals/iem16/src/del16write~.d.8633
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.8727 b/externals/iem16/src/del16write~.d.8727
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.8813 b/externals/iem16/src/del16write~.d.8813
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.9050 b/externals/iem16/src/del16write~.d.9050
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.9129 b/externals/iem16/src/del16write~.d.9129
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/del16write~.d.9781 b/externals/iem16/src/del16write~.d.9781
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.10284 b/externals/iem16/src/iem16.d.10284
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.10424 b/externals/iem16/src/iem16.d.10424
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.10773 b/externals/iem16/src/iem16.d.10773
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.11198 b/externals/iem16/src/iem16.d.11198
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.11223 b/externals/iem16/src/iem16.d.11223
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.11565 b/externals/iem16/src/iem16.d.11565
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.11912 b/externals/iem16/src/iem16.d.11912
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.12004 b/externals/iem16/src/iem16.d.12004
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.1208 b/externals/iem16/src/iem16.d.1208
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.12144 b/externals/iem16/src/iem16.d.12144
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.12422 b/externals/iem16/src/iem16.d.12422
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.12631 b/externals/iem16/src/iem16.d.12631
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.12646 b/externals/iem16/src/iem16.d.12646
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.12785 b/externals/iem16/src/iem16.d.12785
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.13055 b/externals/iem16/src/iem16.d.13055
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.13111 b/externals/iem16/src/iem16.d.13111
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.13146 b/externals/iem16/src/iem16.d.13146
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.13667 b/externals/iem16/src/iem16.d.13667
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.13935 b/externals/iem16/src/iem16.d.13935
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.14152 b/externals/iem16/src/iem16.d.14152
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.14357 b/externals/iem16/src/iem16.d.14357
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.14557 b/externals/iem16/src/iem16.d.14557
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.14709 b/externals/iem16/src/iem16.d.14709
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.14731 b/externals/iem16/src/iem16.d.14731
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.14812 b/externals/iem16/src/iem16.d.14812
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.1524 b/externals/iem16/src/iem16.d.1524
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.15242 b/externals/iem16/src/iem16.d.15242
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.15394 b/externals/iem16/src/iem16.d.15394
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.15429 b/externals/iem16/src/iem16.d.15429
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.15460 b/externals/iem16/src/iem16.d.15460
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.15558 b/externals/iem16/src/iem16.d.15558
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.1557 b/externals/iem16/src/iem16.d.1557
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.15719 b/externals/iem16/src/iem16.d.15719
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.16792 b/externals/iem16/src/iem16.d.16792
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.16864 b/externals/iem16/src/iem16.d.16864
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.17528 b/externals/iem16/src/iem16.d.17528
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.17564 b/externals/iem16/src/iem16.d.17564
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.17566 b/externals/iem16/src/iem16.d.17566
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.17614 b/externals/iem16/src/iem16.d.17614
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.1762 b/externals/iem16/src/iem16.d.1762
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.17733 b/externals/iem16/src/iem16.d.17733
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.17782 b/externals/iem16/src/iem16.d.17782
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.18138 b/externals/iem16/src/iem16.d.18138
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.18562 b/externals/iem16/src/iem16.d.18562
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.19507 b/externals/iem16/src/iem16.d.19507
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.19735 b/externals/iem16/src/iem16.d.19735
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.19960 b/externals/iem16/src/iem16.d.19960
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.20520 b/externals/iem16/src/iem16.d.20520
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.20736 b/externals/iem16/src/iem16.d.20736
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.20845 b/externals/iem16/src/iem16.d.20845
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.21237 b/externals/iem16/src/iem16.d.21237
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.21375 b/externals/iem16/src/iem16.d.21375
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.21554 b/externals/iem16/src/iem16.d.21554
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.21580 b/externals/iem16/src/iem16.d.21580
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.21590 b/externals/iem16/src/iem16.d.21590
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.21787 b/externals/iem16/src/iem16.d.21787
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.21814 b/externals/iem16/src/iem16.d.21814
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.21889 b/externals/iem16/src/iem16.d.21889
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.23140 b/externals/iem16/src/iem16.d.23140
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.2354 b/externals/iem16/src/iem16.d.2354
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.23572 b/externals/iem16/src/iem16.d.23572
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.23701 b/externals/iem16/src/iem16.d.23701
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.2372 b/externals/iem16/src/iem16.d.2372
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.23839 b/externals/iem16/src/iem16.d.23839
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.23896 b/externals/iem16/src/iem16.d.23896
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.23914 b/externals/iem16/src/iem16.d.23914
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.24091 b/externals/iem16/src/iem16.d.24091
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.24319 b/externals/iem16/src/iem16.d.24319
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.24421 b/externals/iem16/src/iem16.d.24421
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.2463 b/externals/iem16/src/iem16.d.2463
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.24753 b/externals/iem16/src/iem16.d.24753
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.2478 b/externals/iem16/src/iem16.d.2478
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.24895 b/externals/iem16/src/iem16.d.24895
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.25834 b/externals/iem16/src/iem16.d.25834
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.25892 b/externals/iem16/src/iem16.d.25892
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.26228 b/externals/iem16/src/iem16.d.26228
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.26301 b/externals/iem16/src/iem16.d.26301
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.27047 b/externals/iem16/src/iem16.d.27047
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.27175 b/externals/iem16/src/iem16.d.27175
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.27535 b/externals/iem16/src/iem16.d.27535
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.27607 b/externals/iem16/src/iem16.d.27607
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.27613 b/externals/iem16/src/iem16.d.27613
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.27630 b/externals/iem16/src/iem16.d.27630
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.27876 b/externals/iem16/src/iem16.d.27876
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.27878 b/externals/iem16/src/iem16.d.27878
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.27944 b/externals/iem16/src/iem16.d.27944
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.2810 b/externals/iem16/src/iem16.d.2810
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.2814 b/externals/iem16/src/iem16.d.2814
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.28307 b/externals/iem16/src/iem16.d.28307
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.28457 b/externals/iem16/src/iem16.d.28457
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.28561 b/externals/iem16/src/iem16.d.28561
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.28628 b/externals/iem16/src/iem16.d.28628
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.28903 b/externals/iem16/src/iem16.d.28903
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.28913 b/externals/iem16/src/iem16.d.28913
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.2942 b/externals/iem16/src/iem16.d.2942
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.29478 b/externals/iem16/src/iem16.d.29478
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.29494 b/externals/iem16/src/iem16.d.29494
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.29932 b/externals/iem16/src/iem16.d.29932
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.30191 b/externals/iem16/src/iem16.d.30191
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.30719 b/externals/iem16/src/iem16.d.30719
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.30839 b/externals/iem16/src/iem16.d.30839
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.30892 b/externals/iem16/src/iem16.d.30892
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.31007 b/externals/iem16/src/iem16.d.31007
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.31098 b/externals/iem16/src/iem16.d.31098
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.3170 b/externals/iem16/src/iem16.d.3170
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.31749 b/externals/iem16/src/iem16.d.31749
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.31818 b/externals/iem16/src/iem16.d.31818
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.32018 b/externals/iem16/src/iem16.d.32018
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.32292 b/externals/iem16/src/iem16.d.32292
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.32354 b/externals/iem16/src/iem16.d.32354
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.32395 b/externals/iem16/src/iem16.d.32395
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.32475 b/externals/iem16/src/iem16.d.32475
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.32527 b/externals/iem16/src/iem16.d.32527
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.32584 b/externals/iem16/src/iem16.d.32584
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.3358 b/externals/iem16/src/iem16.d.3358
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.4097 b/externals/iem16/src/iem16.d.4097
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.4413 b/externals/iem16/src/iem16.d.4413
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.465 b/externals/iem16/src/iem16.d.465
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.4999 b/externals/iem16/src/iem16.d.4999
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.5143 b/externals/iem16/src/iem16.d.5143
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.5667 b/externals/iem16/src/iem16.d.5667
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.6296 b/externals/iem16/src/iem16.d.6296
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.6580 b/externals/iem16/src/iem16.d.6580
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.6749 b/externals/iem16/src/iem16.d.6749
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.6791 b/externals/iem16/src/iem16.d.6791
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.6803 b/externals/iem16/src/iem16.d.6803
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.7384 b/externals/iem16/src/iem16.d.7384
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.774 b/externals/iem16/src/iem16.d.774
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.8345 b/externals/iem16/src/iem16.d.8345
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.8346 b/externals/iem16/src/iem16.d.8346
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.8405 b/externals/iem16/src/iem16.d.8405
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.8585 b/externals/iem16/src/iem16.d.8585
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.8679 b/externals/iem16/src/iem16.d.8679
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.8765 b/externals/iem16/src/iem16.d.8765
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.9002 b/externals/iem16/src/iem16.d.9002
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.9081 b/externals/iem16/src/iem16.d.9081
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16.d.9733 b/externals/iem16/src/iem16.d.9733
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/iem16_delay.h b/externals/iem16/src/iem16_delay.h
deleted file mode 100644
index f3db27b80..000000000
--- a/externals/iem16/src/iem16_delay.h
+++ /dev/null
@@ -1,51 +0,0 @@
-/* copyleft (c) 2003 forum::für::umläute -- IOhannes m zmölnig @ IEM
- * based on d_array.c from pd:
- * Copyright (c) 1997-1999 Miller Puckette and others.
- * For information on usage and redistribution, and for a DISCLAIMER OF ALL
- * WARRANTIES, see the file, "LICENSE.txt," in this distribution.  */
-
-#ifndef INCLUDE_IEM16_DELAY_H__
-#define INCLUDE_IEM16_DELAY_H__
-
-/* sampling */
-
-#include "iem16.h"
-#include <string.h>
-
-
-#if defined __WIN32 || defined __WIN32__
-static int ugen_getsortno(void){return 0;}
-#else
-extern int ugen_getsortno(void);
-#endif
-
-
-t_class *sigdel16write_class;
-
-typedef struct del16writectl{
-  int c_n;
-  t_iem16_16bit *c_vec;
-  int c_phase;
-} t_del16writectl;
-
-typedef struct _sigdel16write{
-  t_object x_obj;
-  t_symbol *x_sym;
-  t_del16writectl x_cspace;
-  int x_sortno;   /* DSP sort number at which this was last put on chain */
-  int x_rsortno;  /* DSP sort # for first del16read or write in chain */
-  int x_vecsize;  /* vector size for del16read~ to use */
-  float x_f;
-} t_sigdel16write;
-
-
-void sigdel16write_checkvecsize(t_sigdel16write *x, int vecsize);
-
-
-# define XTRASAMPS 4
-# define SAMPBLK 4
-
-
-#define DEFDELVS 64	    	/* LATER get this from canvas at DSP time */
-
-#endif
diff --git a/externals/iem16/src/tab16play~.d.10328 b/externals/iem16/src/tab16play~.d.10328
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.10468 b/externals/iem16/src/tab16play~.d.10468
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.10817 b/externals/iem16/src/tab16play~.d.10817
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.11242 b/externals/iem16/src/tab16play~.d.11242
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.11267 b/externals/iem16/src/tab16play~.d.11267
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.11609 b/externals/iem16/src/tab16play~.d.11609
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.11956 b/externals/iem16/src/tab16play~.d.11956
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.12048 b/externals/iem16/src/tab16play~.d.12048
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.12188 b/externals/iem16/src/tab16play~.d.12188
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.12466 b/externals/iem16/src/tab16play~.d.12466
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.12675 b/externals/iem16/src/tab16play~.d.12675
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.12690 b/externals/iem16/src/tab16play~.d.12690
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.12829 b/externals/iem16/src/tab16play~.d.12829
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.13099 b/externals/iem16/src/tab16play~.d.13099
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.13155 b/externals/iem16/src/tab16play~.d.13155
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.13190 b/externals/iem16/src/tab16play~.d.13190
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.1370 b/externals/iem16/src/tab16play~.d.1370
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.13711 b/externals/iem16/src/tab16play~.d.13711
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.13979 b/externals/iem16/src/tab16play~.d.13979
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.14196 b/externals/iem16/src/tab16play~.d.14196
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.14401 b/externals/iem16/src/tab16play~.d.14401
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.14601 b/externals/iem16/src/tab16play~.d.14601
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.14753 b/externals/iem16/src/tab16play~.d.14753
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.14775 b/externals/iem16/src/tab16play~.d.14775
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.14856 b/externals/iem16/src/tab16play~.d.14856
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.15286 b/externals/iem16/src/tab16play~.d.15286
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.15438 b/externals/iem16/src/tab16play~.d.15438
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.15473 b/externals/iem16/src/tab16play~.d.15473
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.15504 b/externals/iem16/src/tab16play~.d.15504
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.15602 b/externals/iem16/src/tab16play~.d.15602
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.1568 b/externals/iem16/src/tab16play~.d.1568
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.15763 b/externals/iem16/src/tab16play~.d.15763
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.1601 b/externals/iem16/src/tab16play~.d.1601
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.16836 b/externals/iem16/src/tab16play~.d.16836
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.16908 b/externals/iem16/src/tab16play~.d.16908
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.17572 b/externals/iem16/src/tab16play~.d.17572
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.17608 b/externals/iem16/src/tab16play~.d.17608
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.17610 b/externals/iem16/src/tab16play~.d.17610
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.17658 b/externals/iem16/src/tab16play~.d.17658
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.17777 b/externals/iem16/src/tab16play~.d.17777
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.17826 b/externals/iem16/src/tab16play~.d.17826
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.1808 b/externals/iem16/src/tab16play~.d.1808
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.18182 b/externals/iem16/src/tab16play~.d.18182
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.18606 b/externals/iem16/src/tab16play~.d.18606
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.19551 b/externals/iem16/src/tab16play~.d.19551
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.19779 b/externals/iem16/src/tab16play~.d.19779
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.20004 b/externals/iem16/src/tab16play~.d.20004
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.20564 b/externals/iem16/src/tab16play~.d.20564
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.20780 b/externals/iem16/src/tab16play~.d.20780
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.20889 b/externals/iem16/src/tab16play~.d.20889
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.21281 b/externals/iem16/src/tab16play~.d.21281
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.21419 b/externals/iem16/src/tab16play~.d.21419
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.21624 b/externals/iem16/src/tab16play~.d.21624
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.21634 b/externals/iem16/src/tab16play~.d.21634
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.21831 b/externals/iem16/src/tab16play~.d.21831
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.21858 b/externals/iem16/src/tab16play~.d.21858
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.21933 b/externals/iem16/src/tab16play~.d.21933
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.23184 b/externals/iem16/src/tab16play~.d.23184
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.23616 b/externals/iem16/src/tab16play~.d.23616
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.23745 b/externals/iem16/src/tab16play~.d.23745
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.23883 b/externals/iem16/src/tab16play~.d.23883
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.23940 b/externals/iem16/src/tab16play~.d.23940
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.23958 b/externals/iem16/src/tab16play~.d.23958
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.2398 b/externals/iem16/src/tab16play~.d.2398
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.24138 b/externals/iem16/src/tab16play~.d.24138
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.2416 b/externals/iem16/src/tab16play~.d.2416
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.24363 b/externals/iem16/src/tab16play~.d.24363
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.24465 b/externals/iem16/src/tab16play~.d.24465
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.24797 b/externals/iem16/src/tab16play~.d.24797
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.24939 b/externals/iem16/src/tab16play~.d.24939
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.2510 b/externals/iem16/src/tab16play~.d.2510
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.2522 b/externals/iem16/src/tab16play~.d.2522
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.25878 b/externals/iem16/src/tab16play~.d.25878
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.25936 b/externals/iem16/src/tab16play~.d.25936
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.26272 b/externals/iem16/src/tab16play~.d.26272
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.26345 b/externals/iem16/src/tab16play~.d.26345
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.27091 b/externals/iem16/src/tab16play~.d.27091
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.27219 b/externals/iem16/src/tab16play~.d.27219
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.27579 b/externals/iem16/src/tab16play~.d.27579
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.27651 b/externals/iem16/src/tab16play~.d.27651
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.27657 b/externals/iem16/src/tab16play~.d.27657
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.27674 b/externals/iem16/src/tab16play~.d.27674
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.27920 b/externals/iem16/src/tab16play~.d.27920
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.27922 b/externals/iem16/src/tab16play~.d.27922
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.27988 b/externals/iem16/src/tab16play~.d.27988
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.28351 b/externals/iem16/src/tab16play~.d.28351
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.28501 b/externals/iem16/src/tab16play~.d.28501
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.2854 b/externals/iem16/src/tab16play~.d.2854
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.2858 b/externals/iem16/src/tab16play~.d.2858
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.28605 b/externals/iem16/src/tab16play~.d.28605
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.28672 b/externals/iem16/src/tab16play~.d.28672
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.28947 b/externals/iem16/src/tab16play~.d.28947
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.28957 b/externals/iem16/src/tab16play~.d.28957
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.29530 b/externals/iem16/src/tab16play~.d.29530
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.29538 b/externals/iem16/src/tab16play~.d.29538
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.2988 b/externals/iem16/src/tab16play~.d.2988
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.29976 b/externals/iem16/src/tab16play~.d.29976
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.30235 b/externals/iem16/src/tab16play~.d.30235
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.30763 b/externals/iem16/src/tab16play~.d.30763
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.30883 b/externals/iem16/src/tab16play~.d.30883
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.30936 b/externals/iem16/src/tab16play~.d.30936
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.31051 b/externals/iem16/src/tab16play~.d.31051
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.31142 b/externals/iem16/src/tab16play~.d.31142
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.31793 b/externals/iem16/src/tab16play~.d.31793
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.31862 b/externals/iem16/src/tab16play~.d.31862
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.32062 b/externals/iem16/src/tab16play~.d.32062
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.3231 b/externals/iem16/src/tab16play~.d.3231
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.32336 b/externals/iem16/src/tab16play~.d.32336
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.32398 b/externals/iem16/src/tab16play~.d.32398
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.32439 b/externals/iem16/src/tab16play~.d.32439
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.32519 b/externals/iem16/src/tab16play~.d.32519
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.32571 b/externals/iem16/src/tab16play~.d.32571
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.32628 b/externals/iem16/src/tab16play~.d.32628
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.3402 b/externals/iem16/src/tab16play~.d.3402
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.4141 b/externals/iem16/src/tab16play~.d.4141
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.4457 b/externals/iem16/src/tab16play~.d.4457
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.5043 b/externals/iem16/src/tab16play~.d.5043
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.509 b/externals/iem16/src/tab16play~.d.509
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.5187 b/externals/iem16/src/tab16play~.d.5187
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.5711 b/externals/iem16/src/tab16play~.d.5711
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.6340 b/externals/iem16/src/tab16play~.d.6340
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.6624 b/externals/iem16/src/tab16play~.d.6624
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.6793 b/externals/iem16/src/tab16play~.d.6793
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.6835 b/externals/iem16/src/tab16play~.d.6835
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.6847 b/externals/iem16/src/tab16play~.d.6847
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.7428 b/externals/iem16/src/tab16play~.d.7428
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.819 b/externals/iem16/src/tab16play~.d.819
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.8389 b/externals/iem16/src/tab16play~.d.8389
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.8449 b/externals/iem16/src/tab16play~.d.8449
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.8629 b/externals/iem16/src/tab16play~.d.8629
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.8723 b/externals/iem16/src/tab16play~.d.8723
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.9046 b/externals/iem16/src/tab16play~.d.9046
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.9125 b/externals/iem16/src/tab16play~.d.9125
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16play~.d.9777 b/externals/iem16/src/tab16play~.d.9777
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.10324 b/externals/iem16/src/tab16read.d.10324
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.10464 b/externals/iem16/src/tab16read.d.10464
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.10813 b/externals/iem16/src/tab16read.d.10813
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.11238 b/externals/iem16/src/tab16read.d.11238
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.11263 b/externals/iem16/src/tab16read.d.11263
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.11605 b/externals/iem16/src/tab16read.d.11605
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.11952 b/externals/iem16/src/tab16read.d.11952
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.12044 b/externals/iem16/src/tab16read.d.12044
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.12184 b/externals/iem16/src/tab16read.d.12184
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.12462 b/externals/iem16/src/tab16read.d.12462
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.12671 b/externals/iem16/src/tab16read.d.12671
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.12686 b/externals/iem16/src/tab16read.d.12686
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.12825 b/externals/iem16/src/tab16read.d.12825
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.13095 b/externals/iem16/src/tab16read.d.13095
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.13151 b/externals/iem16/src/tab16read.d.13151
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.13186 b/externals/iem16/src/tab16read.d.13186
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.1353 b/externals/iem16/src/tab16read.d.1353
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.13707 b/externals/iem16/src/tab16read.d.13707
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.13975 b/externals/iem16/src/tab16read.d.13975
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.14192 b/externals/iem16/src/tab16read.d.14192
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.14397 b/externals/iem16/src/tab16read.d.14397
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.14597 b/externals/iem16/src/tab16read.d.14597
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.14749 b/externals/iem16/src/tab16read.d.14749
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.14771 b/externals/iem16/src/tab16read.d.14771
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.14852 b/externals/iem16/src/tab16read.d.14852
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.15282 b/externals/iem16/src/tab16read.d.15282
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.15434 b/externals/iem16/src/tab16read.d.15434
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.15469 b/externals/iem16/src/tab16read.d.15469
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.15500 b/externals/iem16/src/tab16read.d.15500
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.15598 b/externals/iem16/src/tab16read.d.15598
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.1564 b/externals/iem16/src/tab16read.d.1564
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.15759 b/externals/iem16/src/tab16read.d.15759
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.1597 b/externals/iem16/src/tab16read.d.1597
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.16904 b/externals/iem16/src/tab16read.d.16904
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.17568 b/externals/iem16/src/tab16read.d.17568
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.17604 b/externals/iem16/src/tab16read.d.17604
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.17606 b/externals/iem16/src/tab16read.d.17606
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.17654 b/externals/iem16/src/tab16read.d.17654
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.17773 b/externals/iem16/src/tab16read.d.17773
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.17822 b/externals/iem16/src/tab16read.d.17822
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.1804 b/externals/iem16/src/tab16read.d.1804
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.18178 b/externals/iem16/src/tab16read.d.18178
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.18602 b/externals/iem16/src/tab16read.d.18602
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.19547 b/externals/iem16/src/tab16read.d.19547
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.19775 b/externals/iem16/src/tab16read.d.19775
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.20000 b/externals/iem16/src/tab16read.d.20000
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.20560 b/externals/iem16/src/tab16read.d.20560
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.20776 b/externals/iem16/src/tab16read.d.20776
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.20885 b/externals/iem16/src/tab16read.d.20885
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.21277 b/externals/iem16/src/tab16read.d.21277
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.21415 b/externals/iem16/src/tab16read.d.21415
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.21594 b/externals/iem16/src/tab16read.d.21594
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.21620 b/externals/iem16/src/tab16read.d.21620
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.21630 b/externals/iem16/src/tab16read.d.21630
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.21827 b/externals/iem16/src/tab16read.d.21827
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.21854 b/externals/iem16/src/tab16read.d.21854
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.21929 b/externals/iem16/src/tab16read.d.21929
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.23180 b/externals/iem16/src/tab16read.d.23180
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.23612 b/externals/iem16/src/tab16read.d.23612
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.23741 b/externals/iem16/src/tab16read.d.23741
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.23879 b/externals/iem16/src/tab16read.d.23879
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.23936 b/externals/iem16/src/tab16read.d.23936
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.2394 b/externals/iem16/src/tab16read.d.2394
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.23954 b/externals/iem16/src/tab16read.d.23954
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.2412 b/externals/iem16/src/tab16read.d.2412
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.24134 b/externals/iem16/src/tab16read.d.24134
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.24359 b/externals/iem16/src/tab16read.d.24359
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.24461 b/externals/iem16/src/tab16read.d.24461
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.24793 b/externals/iem16/src/tab16read.d.24793
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.24935 b/externals/iem16/src/tab16read.d.24935
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.2506 b/externals/iem16/src/tab16read.d.2506
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.2518 b/externals/iem16/src/tab16read.d.2518
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.25874 b/externals/iem16/src/tab16read.d.25874
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.25932 b/externals/iem16/src/tab16read.d.25932
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.26268 b/externals/iem16/src/tab16read.d.26268
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.26341 b/externals/iem16/src/tab16read.d.26341
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.27087 b/externals/iem16/src/tab16read.d.27087
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.27215 b/externals/iem16/src/tab16read.d.27215
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.27575 b/externals/iem16/src/tab16read.d.27575
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.27647 b/externals/iem16/src/tab16read.d.27647
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.27653 b/externals/iem16/src/tab16read.d.27653
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.27670 b/externals/iem16/src/tab16read.d.27670
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.27916 b/externals/iem16/src/tab16read.d.27916
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.27918 b/externals/iem16/src/tab16read.d.27918
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.27984 b/externals/iem16/src/tab16read.d.27984
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.28347 b/externals/iem16/src/tab16read.d.28347
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.28497 b/externals/iem16/src/tab16read.d.28497
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.2850 b/externals/iem16/src/tab16read.d.2850
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.2854 b/externals/iem16/src/tab16read.d.2854
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.28601 b/externals/iem16/src/tab16read.d.28601
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.28668 b/externals/iem16/src/tab16read.d.28668
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.28943 b/externals/iem16/src/tab16read.d.28943
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.28953 b/externals/iem16/src/tab16read.d.28953
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.29524 b/externals/iem16/src/tab16read.d.29524
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.29534 b/externals/iem16/src/tab16read.d.29534
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.2984 b/externals/iem16/src/tab16read.d.2984
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.29972 b/externals/iem16/src/tab16read.d.29972
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.30231 b/externals/iem16/src/tab16read.d.30231
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.30759 b/externals/iem16/src/tab16read.d.30759
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.30879 b/externals/iem16/src/tab16read.d.30879
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.30932 b/externals/iem16/src/tab16read.d.30932
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.31047 b/externals/iem16/src/tab16read.d.31047
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.31138 b/externals/iem16/src/tab16read.d.31138
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.31789 b/externals/iem16/src/tab16read.d.31789
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.31858 b/externals/iem16/src/tab16read.d.31858
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.32058 b/externals/iem16/src/tab16read.d.32058
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.3223 b/externals/iem16/src/tab16read.d.3223
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.32332 b/externals/iem16/src/tab16read.d.32332
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.32394 b/externals/iem16/src/tab16read.d.32394
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.32435 b/externals/iem16/src/tab16read.d.32435
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.32515 b/externals/iem16/src/tab16read.d.32515
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.32567 b/externals/iem16/src/tab16read.d.32567
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.32624 b/externals/iem16/src/tab16read.d.32624
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.3398 b/externals/iem16/src/tab16read.d.3398
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.4137 b/externals/iem16/src/tab16read.d.4137
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.4453 b/externals/iem16/src/tab16read.d.4453
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.5039 b/externals/iem16/src/tab16read.d.5039
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.505 b/externals/iem16/src/tab16read.d.505
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.5183 b/externals/iem16/src/tab16read.d.5183
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.5707 b/externals/iem16/src/tab16read.d.5707
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.6336 b/externals/iem16/src/tab16read.d.6336
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.6620 b/externals/iem16/src/tab16read.d.6620
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.6789 b/externals/iem16/src/tab16read.d.6789
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.6831 b/externals/iem16/src/tab16read.d.6831
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.6843 b/externals/iem16/src/tab16read.d.6843
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.7424 b/externals/iem16/src/tab16read.d.7424
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.815 b/externals/iem16/src/tab16read.d.815
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.8385 b/externals/iem16/src/tab16read.d.8385
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.8386 b/externals/iem16/src/tab16read.d.8386
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.8445 b/externals/iem16/src/tab16read.d.8445
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.8625 b/externals/iem16/src/tab16read.d.8625
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.8719 b/externals/iem16/src/tab16read.d.8719
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.8805 b/externals/iem16/src/tab16read.d.8805
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.9042 b/externals/iem16/src/tab16read.d.9042
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.9121 b/externals/iem16/src/tab16read.d.9121
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read.d.9773 b/externals/iem16/src/tab16read.d.9773
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.10320 b/externals/iem16/src/tab16read4.d.10320
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.10460 b/externals/iem16/src/tab16read4.d.10460
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.10809 b/externals/iem16/src/tab16read4.d.10809
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.11234 b/externals/iem16/src/tab16read4.d.11234
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.11259 b/externals/iem16/src/tab16read4.d.11259
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.11601 b/externals/iem16/src/tab16read4.d.11601
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.11948 b/externals/iem16/src/tab16read4.d.11948
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.12040 b/externals/iem16/src/tab16read4.d.12040
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.12180 b/externals/iem16/src/tab16read4.d.12180
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.12458 b/externals/iem16/src/tab16read4.d.12458
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.12667 b/externals/iem16/src/tab16read4.d.12667
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.12682 b/externals/iem16/src/tab16read4.d.12682
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.12821 b/externals/iem16/src/tab16read4.d.12821
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.13091 b/externals/iem16/src/tab16read4.d.13091
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.13147 b/externals/iem16/src/tab16read4.d.13147
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.13182 b/externals/iem16/src/tab16read4.d.13182
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.1339 b/externals/iem16/src/tab16read4.d.1339
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.13703 b/externals/iem16/src/tab16read4.d.13703
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.13971 b/externals/iem16/src/tab16read4.d.13971
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.14393 b/externals/iem16/src/tab16read4.d.14393
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.14593 b/externals/iem16/src/tab16read4.d.14593
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.14745 b/externals/iem16/src/tab16read4.d.14745
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.14767 b/externals/iem16/src/tab16read4.d.14767
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.14848 b/externals/iem16/src/tab16read4.d.14848
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.15278 b/externals/iem16/src/tab16read4.d.15278
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.15430 b/externals/iem16/src/tab16read4.d.15430
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.15496 b/externals/iem16/src/tab16read4.d.15496
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.15594 b/externals/iem16/src/tab16read4.d.15594
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.1560 b/externals/iem16/src/tab16read4.d.1560
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.15755 b/externals/iem16/src/tab16read4.d.15755
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.1593 b/externals/iem16/src/tab16read4.d.1593
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.16828 b/externals/iem16/src/tab16read4.d.16828
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.16900 b/externals/iem16/src/tab16read4.d.16900
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.17564 b/externals/iem16/src/tab16read4.d.17564
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.17600 b/externals/iem16/src/tab16read4.d.17600
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.17602 b/externals/iem16/src/tab16read4.d.17602
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.17650 b/externals/iem16/src/tab16read4.d.17650
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.17769 b/externals/iem16/src/tab16read4.d.17769
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.17818 b/externals/iem16/src/tab16read4.d.17818
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.1799 b/externals/iem16/src/tab16read4.d.1799
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.18174 b/externals/iem16/src/tab16read4.d.18174
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.18598 b/externals/iem16/src/tab16read4.d.18598
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.19543 b/externals/iem16/src/tab16read4.d.19543
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.19771 b/externals/iem16/src/tab16read4.d.19771
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.19996 b/externals/iem16/src/tab16read4.d.19996
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.20556 b/externals/iem16/src/tab16read4.d.20556
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.20772 b/externals/iem16/src/tab16read4.d.20772
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.20881 b/externals/iem16/src/tab16read4.d.20881
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.21273 b/externals/iem16/src/tab16read4.d.21273
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.21411 b/externals/iem16/src/tab16read4.d.21411
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.21590 b/externals/iem16/src/tab16read4.d.21590
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.21616 b/externals/iem16/src/tab16read4.d.21616
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.21626 b/externals/iem16/src/tab16read4.d.21626
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.21823 b/externals/iem16/src/tab16read4.d.21823
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.21925 b/externals/iem16/src/tab16read4.d.21925
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.23176 b/externals/iem16/src/tab16read4.d.23176
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.23608 b/externals/iem16/src/tab16read4.d.23608
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.23737 b/externals/iem16/src/tab16read4.d.23737
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.23875 b/externals/iem16/src/tab16read4.d.23875
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.2390 b/externals/iem16/src/tab16read4.d.2390
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.23932 b/externals/iem16/src/tab16read4.d.23932
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.23950 b/externals/iem16/src/tab16read4.d.23950
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.2408 b/externals/iem16/src/tab16read4.d.2408
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.24130 b/externals/iem16/src/tab16read4.d.24130
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.24355 b/externals/iem16/src/tab16read4.d.24355
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.24457 b/externals/iem16/src/tab16read4.d.24457
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.24789 b/externals/iem16/src/tab16read4.d.24789
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.24931 b/externals/iem16/src/tab16read4.d.24931
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.2501 b/externals/iem16/src/tab16read4.d.2501
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.2514 b/externals/iem16/src/tab16read4.d.2514
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.25870 b/externals/iem16/src/tab16read4.d.25870
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.25928 b/externals/iem16/src/tab16read4.d.25928
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.26264 b/externals/iem16/src/tab16read4.d.26264
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.26337 b/externals/iem16/src/tab16read4.d.26337
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.27083 b/externals/iem16/src/tab16read4.d.27083
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.27211 b/externals/iem16/src/tab16read4.d.27211
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.27571 b/externals/iem16/src/tab16read4.d.27571
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.27643 b/externals/iem16/src/tab16read4.d.27643
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.27649 b/externals/iem16/src/tab16read4.d.27649
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.27666 b/externals/iem16/src/tab16read4.d.27666
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.27912 b/externals/iem16/src/tab16read4.d.27912
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.27914 b/externals/iem16/src/tab16read4.d.27914
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.27980 b/externals/iem16/src/tab16read4.d.27980
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.28343 b/externals/iem16/src/tab16read4.d.28343
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.2846 b/externals/iem16/src/tab16read4.d.2846
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.28493 b/externals/iem16/src/tab16read4.d.28493
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.2850 b/externals/iem16/src/tab16read4.d.2850
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.28597 b/externals/iem16/src/tab16read4.d.28597
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.28664 b/externals/iem16/src/tab16read4.d.28664
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.28939 b/externals/iem16/src/tab16read4.d.28939
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.28949 b/externals/iem16/src/tab16read4.d.28949
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.29518 b/externals/iem16/src/tab16read4.d.29518
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.29530 b/externals/iem16/src/tab16read4.d.29530
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.2979 b/externals/iem16/src/tab16read4.d.2979
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.29968 b/externals/iem16/src/tab16read4.d.29968
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.30227 b/externals/iem16/src/tab16read4.d.30227
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.30755 b/externals/iem16/src/tab16read4.d.30755
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.30875 b/externals/iem16/src/tab16read4.d.30875
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.30928 b/externals/iem16/src/tab16read4.d.30928
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.31043 b/externals/iem16/src/tab16read4.d.31043
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.31134 b/externals/iem16/src/tab16read4.d.31134
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.31785 b/externals/iem16/src/tab16read4.d.31785
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.31854 b/externals/iem16/src/tab16read4.d.31854
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.32054 b/externals/iem16/src/tab16read4.d.32054
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.3219 b/externals/iem16/src/tab16read4.d.3219
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.32328 b/externals/iem16/src/tab16read4.d.32328
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.32390 b/externals/iem16/src/tab16read4.d.32390
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.32431 b/externals/iem16/src/tab16read4.d.32431
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.32511 b/externals/iem16/src/tab16read4.d.32511
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.32563 b/externals/iem16/src/tab16read4.d.32563
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.32620 b/externals/iem16/src/tab16read4.d.32620
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.3394 b/externals/iem16/src/tab16read4.d.3394
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.4133 b/externals/iem16/src/tab16read4.d.4133
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.4449 b/externals/iem16/src/tab16read4.d.4449
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.501 b/externals/iem16/src/tab16read4.d.501
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.5035 b/externals/iem16/src/tab16read4.d.5035
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.5179 b/externals/iem16/src/tab16read4.d.5179
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.5703 b/externals/iem16/src/tab16read4.d.5703
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.6332 b/externals/iem16/src/tab16read4.d.6332
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.6616 b/externals/iem16/src/tab16read4.d.6616
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.6785 b/externals/iem16/src/tab16read4.d.6785
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.6827 b/externals/iem16/src/tab16read4.d.6827
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.6839 b/externals/iem16/src/tab16read4.d.6839
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.7420 b/externals/iem16/src/tab16read4.d.7420
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.811 b/externals/iem16/src/tab16read4.d.811
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.8381 b/externals/iem16/src/tab16read4.d.8381
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.8382 b/externals/iem16/src/tab16read4.d.8382
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.8441 b/externals/iem16/src/tab16read4.d.8441
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.8621 b/externals/iem16/src/tab16read4.d.8621
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.8715 b/externals/iem16/src/tab16read4.d.8715
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.8801 b/externals/iem16/src/tab16read4.d.8801
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.9038 b/externals/iem16/src/tab16read4.d.9038
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.9117 b/externals/iem16/src/tab16read4.d.9117
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4.d.9769 b/externals/iem16/src/tab16read4.d.9769
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.10316 b/externals/iem16/src/tab16read4~.d.10316
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.10456 b/externals/iem16/src/tab16read4~.d.10456
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.10805 b/externals/iem16/src/tab16read4~.d.10805
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.11230 b/externals/iem16/src/tab16read4~.d.11230
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.11255 b/externals/iem16/src/tab16read4~.d.11255
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.11597 b/externals/iem16/src/tab16read4~.d.11597
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.11944 b/externals/iem16/src/tab16read4~.d.11944
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.12036 b/externals/iem16/src/tab16read4~.d.12036
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.12176 b/externals/iem16/src/tab16read4~.d.12176
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.12454 b/externals/iem16/src/tab16read4~.d.12454
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.12663 b/externals/iem16/src/tab16read4~.d.12663
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.12678 b/externals/iem16/src/tab16read4~.d.12678
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.12817 b/externals/iem16/src/tab16read4~.d.12817
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.13087 b/externals/iem16/src/tab16read4~.d.13087
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.13143 b/externals/iem16/src/tab16read4~.d.13143
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.13178 b/externals/iem16/src/tab16read4~.d.13178
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.1321 b/externals/iem16/src/tab16read4~.d.1321
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.13699 b/externals/iem16/src/tab16read4~.d.13699
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.13967 b/externals/iem16/src/tab16read4~.d.13967
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.14184 b/externals/iem16/src/tab16read4~.d.14184
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.14389 b/externals/iem16/src/tab16read4~.d.14389
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.14589 b/externals/iem16/src/tab16read4~.d.14589
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.14741 b/externals/iem16/src/tab16read4~.d.14741
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.14763 b/externals/iem16/src/tab16read4~.d.14763
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.14844 b/externals/iem16/src/tab16read4~.d.14844
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.15274 b/externals/iem16/src/tab16read4~.d.15274
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.15426 b/externals/iem16/src/tab16read4~.d.15426
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.15461 b/externals/iem16/src/tab16read4~.d.15461
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.15492 b/externals/iem16/src/tab16read4~.d.15492
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.1556 b/externals/iem16/src/tab16read4~.d.1556
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.15590 b/externals/iem16/src/tab16read4~.d.15590
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.15751 b/externals/iem16/src/tab16read4~.d.15751
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.1589 b/externals/iem16/src/tab16read4~.d.1589
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.16824 b/externals/iem16/src/tab16read4~.d.16824
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.16896 b/externals/iem16/src/tab16read4~.d.16896
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.17560 b/externals/iem16/src/tab16read4~.d.17560
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.17596 b/externals/iem16/src/tab16read4~.d.17596
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.17598 b/externals/iem16/src/tab16read4~.d.17598
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.17646 b/externals/iem16/src/tab16read4~.d.17646
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.17765 b/externals/iem16/src/tab16read4~.d.17765
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.17814 b/externals/iem16/src/tab16read4~.d.17814
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.1795 b/externals/iem16/src/tab16read4~.d.1795
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.18170 b/externals/iem16/src/tab16read4~.d.18170
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.18594 b/externals/iem16/src/tab16read4~.d.18594
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.19539 b/externals/iem16/src/tab16read4~.d.19539
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.19767 b/externals/iem16/src/tab16read4~.d.19767
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.19992 b/externals/iem16/src/tab16read4~.d.19992
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.20552 b/externals/iem16/src/tab16read4~.d.20552
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.20768 b/externals/iem16/src/tab16read4~.d.20768
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.20877 b/externals/iem16/src/tab16read4~.d.20877
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.21269 b/externals/iem16/src/tab16read4~.d.21269
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.21407 b/externals/iem16/src/tab16read4~.d.21407
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.21586 b/externals/iem16/src/tab16read4~.d.21586
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.21612 b/externals/iem16/src/tab16read4~.d.21612
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.21622 b/externals/iem16/src/tab16read4~.d.21622
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.21819 b/externals/iem16/src/tab16read4~.d.21819
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.21846 b/externals/iem16/src/tab16read4~.d.21846
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.21921 b/externals/iem16/src/tab16read4~.d.21921
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.23172 b/externals/iem16/src/tab16read4~.d.23172
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.23604 b/externals/iem16/src/tab16read4~.d.23604
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.23733 b/externals/iem16/src/tab16read4~.d.23733
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.2386 b/externals/iem16/src/tab16read4~.d.2386
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.23871 b/externals/iem16/src/tab16read4~.d.23871
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.23928 b/externals/iem16/src/tab16read4~.d.23928
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.23946 b/externals/iem16/src/tab16read4~.d.23946
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.2404 b/externals/iem16/src/tab16read4~.d.2404
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.24126 b/externals/iem16/src/tab16read4~.d.24126
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.24351 b/externals/iem16/src/tab16read4~.d.24351
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.24453 b/externals/iem16/src/tab16read4~.d.24453
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.24785 b/externals/iem16/src/tab16read4~.d.24785
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.24927 b/externals/iem16/src/tab16read4~.d.24927
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.2497 b/externals/iem16/src/tab16read4~.d.2497
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.2510 b/externals/iem16/src/tab16read4~.d.2510
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.25866 b/externals/iem16/src/tab16read4~.d.25866
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.25924 b/externals/iem16/src/tab16read4~.d.25924
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.26260 b/externals/iem16/src/tab16read4~.d.26260
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.26333 b/externals/iem16/src/tab16read4~.d.26333
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.27079 b/externals/iem16/src/tab16read4~.d.27079
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.27207 b/externals/iem16/src/tab16read4~.d.27207
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.27567 b/externals/iem16/src/tab16read4~.d.27567
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.27639 b/externals/iem16/src/tab16read4~.d.27639
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.27645 b/externals/iem16/src/tab16read4~.d.27645
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.27662 b/externals/iem16/src/tab16read4~.d.27662
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.27908 b/externals/iem16/src/tab16read4~.d.27908
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.27910 b/externals/iem16/src/tab16read4~.d.27910
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.27976 b/externals/iem16/src/tab16read4~.d.27976
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.28339 b/externals/iem16/src/tab16read4~.d.28339
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.2842 b/externals/iem16/src/tab16read4~.d.2842
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.2846 b/externals/iem16/src/tab16read4~.d.2846
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.28489 b/externals/iem16/src/tab16read4~.d.28489
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.28593 b/externals/iem16/src/tab16read4~.d.28593
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.28660 b/externals/iem16/src/tab16read4~.d.28660
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.28935 b/externals/iem16/src/tab16read4~.d.28935
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.28945 b/externals/iem16/src/tab16read4~.d.28945
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.29512 b/externals/iem16/src/tab16read4~.d.29512
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.29526 b/externals/iem16/src/tab16read4~.d.29526
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.2975 b/externals/iem16/src/tab16read4~.d.2975
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.29964 b/externals/iem16/src/tab16read4~.d.29964
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.30223 b/externals/iem16/src/tab16read4~.d.30223
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.30751 b/externals/iem16/src/tab16read4~.d.30751
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.30871 b/externals/iem16/src/tab16read4~.d.30871
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.30924 b/externals/iem16/src/tab16read4~.d.30924
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.31039 b/externals/iem16/src/tab16read4~.d.31039
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.31130 b/externals/iem16/src/tab16read4~.d.31130
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.31850 b/externals/iem16/src/tab16read4~.d.31850
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.32050 b/externals/iem16/src/tab16read4~.d.32050
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.3212 b/externals/iem16/src/tab16read4~.d.3212
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.32324 b/externals/iem16/src/tab16read4~.d.32324
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.32386 b/externals/iem16/src/tab16read4~.d.32386
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.32427 b/externals/iem16/src/tab16read4~.d.32427
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.32507 b/externals/iem16/src/tab16read4~.d.32507
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.32559 b/externals/iem16/src/tab16read4~.d.32559
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.32616 b/externals/iem16/src/tab16read4~.d.32616
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.3390 b/externals/iem16/src/tab16read4~.d.3390
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.4129 b/externals/iem16/src/tab16read4~.d.4129
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.4445 b/externals/iem16/src/tab16read4~.d.4445
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.497 b/externals/iem16/src/tab16read4~.d.497
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.5031 b/externals/iem16/src/tab16read4~.d.5031
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.5175 b/externals/iem16/src/tab16read4~.d.5175
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.5699 b/externals/iem16/src/tab16read4~.d.5699
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.6328 b/externals/iem16/src/tab16read4~.d.6328
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.6612 b/externals/iem16/src/tab16read4~.d.6612
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.6781 b/externals/iem16/src/tab16read4~.d.6781
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.6823 b/externals/iem16/src/tab16read4~.d.6823
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.6835 b/externals/iem16/src/tab16read4~.d.6835
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.7416 b/externals/iem16/src/tab16read4~.d.7416
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.806 b/externals/iem16/src/tab16read4~.d.806
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.8377 b/externals/iem16/src/tab16read4~.d.8377
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.8378 b/externals/iem16/src/tab16read4~.d.8378
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.8437 b/externals/iem16/src/tab16read4~.d.8437
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.8617 b/externals/iem16/src/tab16read4~.d.8617
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.8711 b/externals/iem16/src/tab16read4~.d.8711
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.8797 b/externals/iem16/src/tab16read4~.d.8797
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.9034 b/externals/iem16/src/tab16read4~.d.9034
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.9113 b/externals/iem16/src/tab16read4~.d.9113
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read4~.d.9765 b/externals/iem16/src/tab16read4~.d.9765
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.10312 b/externals/iem16/src/tab16read~.d.10312
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.10452 b/externals/iem16/src/tab16read~.d.10452
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.10801 b/externals/iem16/src/tab16read~.d.10801
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.11226 b/externals/iem16/src/tab16read~.d.11226
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.11251 b/externals/iem16/src/tab16read~.d.11251
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.11593 b/externals/iem16/src/tab16read~.d.11593
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.11940 b/externals/iem16/src/tab16read~.d.11940
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.12032 b/externals/iem16/src/tab16read~.d.12032
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.12172 b/externals/iem16/src/tab16read~.d.12172
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.12450 b/externals/iem16/src/tab16read~.d.12450
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.12659 b/externals/iem16/src/tab16read~.d.12659
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.12674 b/externals/iem16/src/tab16read~.d.12674
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.12813 b/externals/iem16/src/tab16read~.d.12813
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.1307 b/externals/iem16/src/tab16read~.d.1307
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.13083 b/externals/iem16/src/tab16read~.d.13083
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.13139 b/externals/iem16/src/tab16read~.d.13139
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.13174 b/externals/iem16/src/tab16read~.d.13174
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.13695 b/externals/iem16/src/tab16read~.d.13695
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.13963 b/externals/iem16/src/tab16read~.d.13963
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.14180 b/externals/iem16/src/tab16read~.d.14180
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.14385 b/externals/iem16/src/tab16read~.d.14385
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.14585 b/externals/iem16/src/tab16read~.d.14585
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.14759 b/externals/iem16/src/tab16read~.d.14759
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.14840 b/externals/iem16/src/tab16read~.d.14840
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.15270 b/externals/iem16/src/tab16read~.d.15270
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.15422 b/externals/iem16/src/tab16read~.d.15422
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.15457 b/externals/iem16/src/tab16read~.d.15457
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.15488 b/externals/iem16/src/tab16read~.d.15488
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.1552 b/externals/iem16/src/tab16read~.d.1552
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.15586 b/externals/iem16/src/tab16read~.d.15586
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.15747 b/externals/iem16/src/tab16read~.d.15747
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.1585 b/externals/iem16/src/tab16read~.d.1585
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.16820 b/externals/iem16/src/tab16read~.d.16820
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.16892 b/externals/iem16/src/tab16read~.d.16892
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.17556 b/externals/iem16/src/tab16read~.d.17556
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.17592 b/externals/iem16/src/tab16read~.d.17592
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.17594 b/externals/iem16/src/tab16read~.d.17594
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.17642 b/externals/iem16/src/tab16read~.d.17642
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.17761 b/externals/iem16/src/tab16read~.d.17761
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.17810 b/externals/iem16/src/tab16read~.d.17810
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.1791 b/externals/iem16/src/tab16read~.d.1791
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.18166 b/externals/iem16/src/tab16read~.d.18166
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.18590 b/externals/iem16/src/tab16read~.d.18590
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.19535 b/externals/iem16/src/tab16read~.d.19535
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.19763 b/externals/iem16/src/tab16read~.d.19763
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.19988 b/externals/iem16/src/tab16read~.d.19988
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.20548 b/externals/iem16/src/tab16read~.d.20548
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.20764 b/externals/iem16/src/tab16read~.d.20764
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.20873 b/externals/iem16/src/tab16read~.d.20873
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.21265 b/externals/iem16/src/tab16read~.d.21265
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.21403 b/externals/iem16/src/tab16read~.d.21403
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.21582 b/externals/iem16/src/tab16read~.d.21582
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.21608 b/externals/iem16/src/tab16read~.d.21608
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.21618 b/externals/iem16/src/tab16read~.d.21618
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.21815 b/externals/iem16/src/tab16read~.d.21815
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.21842 b/externals/iem16/src/tab16read~.d.21842
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.21917 b/externals/iem16/src/tab16read~.d.21917
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.23168 b/externals/iem16/src/tab16read~.d.23168
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.23600 b/externals/iem16/src/tab16read~.d.23600
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.23729 b/externals/iem16/src/tab16read~.d.23729
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.2382 b/externals/iem16/src/tab16read~.d.2382
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.23867 b/externals/iem16/src/tab16read~.d.23867
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.23924 b/externals/iem16/src/tab16read~.d.23924
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.23942 b/externals/iem16/src/tab16read~.d.23942
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.2400 b/externals/iem16/src/tab16read~.d.2400
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.24122 b/externals/iem16/src/tab16read~.d.24122
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.24347 b/externals/iem16/src/tab16read~.d.24347
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.24449 b/externals/iem16/src/tab16read~.d.24449
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.24781 b/externals/iem16/src/tab16read~.d.24781
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.2492 b/externals/iem16/src/tab16read~.d.2492
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.24923 b/externals/iem16/src/tab16read~.d.24923
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.2506 b/externals/iem16/src/tab16read~.d.2506
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.25862 b/externals/iem16/src/tab16read~.d.25862
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.25920 b/externals/iem16/src/tab16read~.d.25920
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.26256 b/externals/iem16/src/tab16read~.d.26256
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.26329 b/externals/iem16/src/tab16read~.d.26329
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.27075 b/externals/iem16/src/tab16read~.d.27075
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.27203 b/externals/iem16/src/tab16read~.d.27203
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.27563 b/externals/iem16/src/tab16read~.d.27563
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.27635 b/externals/iem16/src/tab16read~.d.27635
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.27641 b/externals/iem16/src/tab16read~.d.27641
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.27658 b/externals/iem16/src/tab16read~.d.27658
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.27904 b/externals/iem16/src/tab16read~.d.27904
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.27906 b/externals/iem16/src/tab16read~.d.27906
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.27972 b/externals/iem16/src/tab16read~.d.27972
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.28335 b/externals/iem16/src/tab16read~.d.28335
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.2838 b/externals/iem16/src/tab16read~.d.2838
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.2842 b/externals/iem16/src/tab16read~.d.2842
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.28485 b/externals/iem16/src/tab16read~.d.28485
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.28589 b/externals/iem16/src/tab16read~.d.28589
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.28656 b/externals/iem16/src/tab16read~.d.28656
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.28931 b/externals/iem16/src/tab16read~.d.28931
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.28941 b/externals/iem16/src/tab16read~.d.28941
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.29508 b/externals/iem16/src/tab16read~.d.29508
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.29522 b/externals/iem16/src/tab16read~.d.29522
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.2971 b/externals/iem16/src/tab16read~.d.2971
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.29960 b/externals/iem16/src/tab16read~.d.29960
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.30219 b/externals/iem16/src/tab16read~.d.30219
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.30747 b/externals/iem16/src/tab16read~.d.30747
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.30867 b/externals/iem16/src/tab16read~.d.30867
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.30920 b/externals/iem16/src/tab16read~.d.30920
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.31035 b/externals/iem16/src/tab16read~.d.31035
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.31126 b/externals/iem16/src/tab16read~.d.31126
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.31777 b/externals/iem16/src/tab16read~.d.31777
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.31846 b/externals/iem16/src/tab16read~.d.31846
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.32046 b/externals/iem16/src/tab16read~.d.32046
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.3207 b/externals/iem16/src/tab16read~.d.3207
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.32320 b/externals/iem16/src/tab16read~.d.32320
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.32382 b/externals/iem16/src/tab16read~.d.32382
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.32423 b/externals/iem16/src/tab16read~.d.32423
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.32503 b/externals/iem16/src/tab16read~.d.32503
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.32555 b/externals/iem16/src/tab16read~.d.32555
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.32612 b/externals/iem16/src/tab16read~.d.32612
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.3386 b/externals/iem16/src/tab16read~.d.3386
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.4125 b/externals/iem16/src/tab16read~.d.4125
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.4441 b/externals/iem16/src/tab16read~.d.4441
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.493 b/externals/iem16/src/tab16read~.d.493
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.5027 b/externals/iem16/src/tab16read~.d.5027
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.5171 b/externals/iem16/src/tab16read~.d.5171
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.6608 b/externals/iem16/src/tab16read~.d.6608
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.6777 b/externals/iem16/src/tab16read~.d.6777
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.6819 b/externals/iem16/src/tab16read~.d.6819
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.6831 b/externals/iem16/src/tab16read~.d.6831
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.7412 b/externals/iem16/src/tab16read~.d.7412
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.802 b/externals/iem16/src/tab16read~.d.802
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.8373 b/externals/iem16/src/tab16read~.d.8373
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.8374 b/externals/iem16/src/tab16read~.d.8374
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.8433 b/externals/iem16/src/tab16read~.d.8433
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.8613 b/externals/iem16/src/tab16read~.d.8613
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.8707 b/externals/iem16/src/tab16read~.d.8707
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.8793 b/externals/iem16/src/tab16read~.d.8793
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.9030 b/externals/iem16/src/tab16read~.d.9030
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.9109 b/externals/iem16/src/tab16read~.d.9109
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16read~.d.9761 b/externals/iem16/src/tab16read~.d.9761
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.10308 b/externals/iem16/src/tab16receive~.d.10308
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.10448 b/externals/iem16/src/tab16receive~.d.10448
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.10797 b/externals/iem16/src/tab16receive~.d.10797
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.11222 b/externals/iem16/src/tab16receive~.d.11222
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.11247 b/externals/iem16/src/tab16receive~.d.11247
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.11589 b/externals/iem16/src/tab16receive~.d.11589
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.11936 b/externals/iem16/src/tab16receive~.d.11936
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.12028 b/externals/iem16/src/tab16receive~.d.12028
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.12168 b/externals/iem16/src/tab16receive~.d.12168
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.12446 b/externals/iem16/src/tab16receive~.d.12446
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.12655 b/externals/iem16/src/tab16receive~.d.12655
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.12670 b/externals/iem16/src/tab16receive~.d.12670
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.12809 b/externals/iem16/src/tab16receive~.d.12809
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.1296 b/externals/iem16/src/tab16receive~.d.1296
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.13079 b/externals/iem16/src/tab16receive~.d.13079
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.13135 b/externals/iem16/src/tab16receive~.d.13135
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.13170 b/externals/iem16/src/tab16receive~.d.13170
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.13691 b/externals/iem16/src/tab16receive~.d.13691
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.13959 b/externals/iem16/src/tab16receive~.d.13959
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.14176 b/externals/iem16/src/tab16receive~.d.14176
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.14381 b/externals/iem16/src/tab16receive~.d.14381
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.14581 b/externals/iem16/src/tab16receive~.d.14581
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.14733 b/externals/iem16/src/tab16receive~.d.14733
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.14755 b/externals/iem16/src/tab16receive~.d.14755
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.14836 b/externals/iem16/src/tab16receive~.d.14836
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.15266 b/externals/iem16/src/tab16receive~.d.15266
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.15418 b/externals/iem16/src/tab16receive~.d.15418
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.15453 b/externals/iem16/src/tab16receive~.d.15453
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.1548 b/externals/iem16/src/tab16receive~.d.1548
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.15484 b/externals/iem16/src/tab16receive~.d.15484
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.15582 b/externals/iem16/src/tab16receive~.d.15582
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.15743 b/externals/iem16/src/tab16receive~.d.15743
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.1581 b/externals/iem16/src/tab16receive~.d.1581
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.16816 b/externals/iem16/src/tab16receive~.d.16816
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.16888 b/externals/iem16/src/tab16receive~.d.16888
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.17552 b/externals/iem16/src/tab16receive~.d.17552
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.17588 b/externals/iem16/src/tab16receive~.d.17588
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.17590 b/externals/iem16/src/tab16receive~.d.17590
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.17638 b/externals/iem16/src/tab16receive~.d.17638
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.17757 b/externals/iem16/src/tab16receive~.d.17757
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.17806 b/externals/iem16/src/tab16receive~.d.17806
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.1787 b/externals/iem16/src/tab16receive~.d.1787
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.18162 b/externals/iem16/src/tab16receive~.d.18162
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.18586 b/externals/iem16/src/tab16receive~.d.18586
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.19531 b/externals/iem16/src/tab16receive~.d.19531
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.19759 b/externals/iem16/src/tab16receive~.d.19759
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.20544 b/externals/iem16/src/tab16receive~.d.20544
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.20760 b/externals/iem16/src/tab16receive~.d.20760
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.20869 b/externals/iem16/src/tab16receive~.d.20869
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.21261 b/externals/iem16/src/tab16receive~.d.21261
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.21399 b/externals/iem16/src/tab16receive~.d.21399
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.21578 b/externals/iem16/src/tab16receive~.d.21578
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.21604 b/externals/iem16/src/tab16receive~.d.21604
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.21614 b/externals/iem16/src/tab16receive~.d.21614
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.21811 b/externals/iem16/src/tab16receive~.d.21811
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.21838 b/externals/iem16/src/tab16receive~.d.21838
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.21913 b/externals/iem16/src/tab16receive~.d.21913
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.23164 b/externals/iem16/src/tab16receive~.d.23164
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.23596 b/externals/iem16/src/tab16receive~.d.23596
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.23725 b/externals/iem16/src/tab16receive~.d.23725
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.2378 b/externals/iem16/src/tab16receive~.d.2378
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.23863 b/externals/iem16/src/tab16receive~.d.23863
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.23920 b/externals/iem16/src/tab16receive~.d.23920
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.23938 b/externals/iem16/src/tab16receive~.d.23938
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.2396 b/externals/iem16/src/tab16receive~.d.2396
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.24118 b/externals/iem16/src/tab16receive~.d.24118
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.24343 b/externals/iem16/src/tab16receive~.d.24343
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.24445 b/externals/iem16/src/tab16receive~.d.24445
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.24777 b/externals/iem16/src/tab16receive~.d.24777
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.2488 b/externals/iem16/src/tab16receive~.d.2488
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.24919 b/externals/iem16/src/tab16receive~.d.24919
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.2502 b/externals/iem16/src/tab16receive~.d.2502
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.25858 b/externals/iem16/src/tab16receive~.d.25858
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.25916 b/externals/iem16/src/tab16receive~.d.25916
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.26252 b/externals/iem16/src/tab16receive~.d.26252
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.26325 b/externals/iem16/src/tab16receive~.d.26325
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.27071 b/externals/iem16/src/tab16receive~.d.27071
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.27199 b/externals/iem16/src/tab16receive~.d.27199
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.27559 b/externals/iem16/src/tab16receive~.d.27559
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.27631 b/externals/iem16/src/tab16receive~.d.27631
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.27637 b/externals/iem16/src/tab16receive~.d.27637
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.27654 b/externals/iem16/src/tab16receive~.d.27654
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.27900 b/externals/iem16/src/tab16receive~.d.27900
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.27902 b/externals/iem16/src/tab16receive~.d.27902
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.27968 b/externals/iem16/src/tab16receive~.d.27968
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.28331 b/externals/iem16/src/tab16receive~.d.28331
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.2834 b/externals/iem16/src/tab16receive~.d.2834
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.2838 b/externals/iem16/src/tab16receive~.d.2838
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.28481 b/externals/iem16/src/tab16receive~.d.28481
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.28585 b/externals/iem16/src/tab16receive~.d.28585
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.28652 b/externals/iem16/src/tab16receive~.d.28652
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.28927 b/externals/iem16/src/tab16receive~.d.28927
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.28937 b/externals/iem16/src/tab16receive~.d.28937
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.29503 b/externals/iem16/src/tab16receive~.d.29503
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.29518 b/externals/iem16/src/tab16receive~.d.29518
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.2967 b/externals/iem16/src/tab16receive~.d.2967
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.29956 b/externals/iem16/src/tab16receive~.d.29956
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.30215 b/externals/iem16/src/tab16receive~.d.30215
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.30743 b/externals/iem16/src/tab16receive~.d.30743
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.30863 b/externals/iem16/src/tab16receive~.d.30863
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.30916 b/externals/iem16/src/tab16receive~.d.30916
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.31031 b/externals/iem16/src/tab16receive~.d.31031
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.31122 b/externals/iem16/src/tab16receive~.d.31122
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.31773 b/externals/iem16/src/tab16receive~.d.31773
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.31842 b/externals/iem16/src/tab16receive~.d.31842
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.3200 b/externals/iem16/src/tab16receive~.d.3200
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.32042 b/externals/iem16/src/tab16receive~.d.32042
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.32316 b/externals/iem16/src/tab16receive~.d.32316
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.32378 b/externals/iem16/src/tab16receive~.d.32378
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.32419 b/externals/iem16/src/tab16receive~.d.32419
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.32499 b/externals/iem16/src/tab16receive~.d.32499
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.32551 b/externals/iem16/src/tab16receive~.d.32551
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.32608 b/externals/iem16/src/tab16receive~.d.32608
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.3382 b/externals/iem16/src/tab16receive~.d.3382
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.4121 b/externals/iem16/src/tab16receive~.d.4121
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.4437 b/externals/iem16/src/tab16receive~.d.4437
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.489 b/externals/iem16/src/tab16receive~.d.489
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.5023 b/externals/iem16/src/tab16receive~.d.5023
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.5167 b/externals/iem16/src/tab16receive~.d.5167
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.5691 b/externals/iem16/src/tab16receive~.d.5691
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.6320 b/externals/iem16/src/tab16receive~.d.6320
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.6604 b/externals/iem16/src/tab16receive~.d.6604
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.6773 b/externals/iem16/src/tab16receive~.d.6773
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.6815 b/externals/iem16/src/tab16receive~.d.6815
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.6827 b/externals/iem16/src/tab16receive~.d.6827
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.7408 b/externals/iem16/src/tab16receive~.d.7408
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.798 b/externals/iem16/src/tab16receive~.d.798
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.8369 b/externals/iem16/src/tab16receive~.d.8369
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.8370 b/externals/iem16/src/tab16receive~.d.8370
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.8429 b/externals/iem16/src/tab16receive~.d.8429
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.8609 b/externals/iem16/src/tab16receive~.d.8609
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.8703 b/externals/iem16/src/tab16receive~.d.8703
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.8789 b/externals/iem16/src/tab16receive~.d.8789
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.9026 b/externals/iem16/src/tab16receive~.d.9026
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.9105 b/externals/iem16/src/tab16receive~.d.9105
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16receive~.d.9757 b/externals/iem16/src/tab16receive~.d.9757
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.10304 b/externals/iem16/src/tab16send~.d.10304
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.10444 b/externals/iem16/src/tab16send~.d.10444
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.10793 b/externals/iem16/src/tab16send~.d.10793
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.11218 b/externals/iem16/src/tab16send~.d.11218
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.11243 b/externals/iem16/src/tab16send~.d.11243
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.11585 b/externals/iem16/src/tab16send~.d.11585
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.11932 b/externals/iem16/src/tab16send~.d.11932
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.12024 b/externals/iem16/src/tab16send~.d.12024
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.12164 b/externals/iem16/src/tab16send~.d.12164
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.12442 b/externals/iem16/src/tab16send~.d.12442
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.12651 b/externals/iem16/src/tab16send~.d.12651
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.12666 b/externals/iem16/src/tab16send~.d.12666
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.12805 b/externals/iem16/src/tab16send~.d.12805
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.1286 b/externals/iem16/src/tab16send~.d.1286
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.13075 b/externals/iem16/src/tab16send~.d.13075
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.13131 b/externals/iem16/src/tab16send~.d.13131
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.13166 b/externals/iem16/src/tab16send~.d.13166
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.13687 b/externals/iem16/src/tab16send~.d.13687
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.13955 b/externals/iem16/src/tab16send~.d.13955
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.14172 b/externals/iem16/src/tab16send~.d.14172
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.14377 b/externals/iem16/src/tab16send~.d.14377
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.14577 b/externals/iem16/src/tab16send~.d.14577
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.14729 b/externals/iem16/src/tab16send~.d.14729
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.14751 b/externals/iem16/src/tab16send~.d.14751
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.14832 b/externals/iem16/src/tab16send~.d.14832
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.15262 b/externals/iem16/src/tab16send~.d.15262
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.15414 b/externals/iem16/src/tab16send~.d.15414
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.1544 b/externals/iem16/src/tab16send~.d.1544
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.15449 b/externals/iem16/src/tab16send~.d.15449
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.15480 b/externals/iem16/src/tab16send~.d.15480
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.15578 b/externals/iem16/src/tab16send~.d.15578
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.15739 b/externals/iem16/src/tab16send~.d.15739
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.1577 b/externals/iem16/src/tab16send~.d.1577
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.16812 b/externals/iem16/src/tab16send~.d.16812
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.16884 b/externals/iem16/src/tab16send~.d.16884
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.17548 b/externals/iem16/src/tab16send~.d.17548
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.17584 b/externals/iem16/src/tab16send~.d.17584
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.17586 b/externals/iem16/src/tab16send~.d.17586
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.17634 b/externals/iem16/src/tab16send~.d.17634
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.17753 b/externals/iem16/src/tab16send~.d.17753
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.17802 b/externals/iem16/src/tab16send~.d.17802
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.1783 b/externals/iem16/src/tab16send~.d.1783
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.18158 b/externals/iem16/src/tab16send~.d.18158
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.18582 b/externals/iem16/src/tab16send~.d.18582
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.19527 b/externals/iem16/src/tab16send~.d.19527
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.19755 b/externals/iem16/src/tab16send~.d.19755
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.19980 b/externals/iem16/src/tab16send~.d.19980
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.20540 b/externals/iem16/src/tab16send~.d.20540
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.20756 b/externals/iem16/src/tab16send~.d.20756
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.20865 b/externals/iem16/src/tab16send~.d.20865
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.21257 b/externals/iem16/src/tab16send~.d.21257
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.21395 b/externals/iem16/src/tab16send~.d.21395
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.21574 b/externals/iem16/src/tab16send~.d.21574
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.21600 b/externals/iem16/src/tab16send~.d.21600
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.21610 b/externals/iem16/src/tab16send~.d.21610
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.21807 b/externals/iem16/src/tab16send~.d.21807
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.21834 b/externals/iem16/src/tab16send~.d.21834
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.21909 b/externals/iem16/src/tab16send~.d.21909
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.23160 b/externals/iem16/src/tab16send~.d.23160
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.23592 b/externals/iem16/src/tab16send~.d.23592
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.23721 b/externals/iem16/src/tab16send~.d.23721
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.2374 b/externals/iem16/src/tab16send~.d.2374
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.23859 b/externals/iem16/src/tab16send~.d.23859
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.23916 b/externals/iem16/src/tab16send~.d.23916
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.2392 b/externals/iem16/src/tab16send~.d.2392
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.23934 b/externals/iem16/src/tab16send~.d.23934
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.24114 b/externals/iem16/src/tab16send~.d.24114
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.24339 b/externals/iem16/src/tab16send~.d.24339
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.24441 b/externals/iem16/src/tab16send~.d.24441
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.24773 b/externals/iem16/src/tab16send~.d.24773
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.2484 b/externals/iem16/src/tab16send~.d.2484
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.24915 b/externals/iem16/src/tab16send~.d.24915
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.2498 b/externals/iem16/src/tab16send~.d.2498
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.25854 b/externals/iem16/src/tab16send~.d.25854
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.25912 b/externals/iem16/src/tab16send~.d.25912
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.26248 b/externals/iem16/src/tab16send~.d.26248
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.26321 b/externals/iem16/src/tab16send~.d.26321
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.27067 b/externals/iem16/src/tab16send~.d.27067
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.27195 b/externals/iem16/src/tab16send~.d.27195
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.27555 b/externals/iem16/src/tab16send~.d.27555
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.27627 b/externals/iem16/src/tab16send~.d.27627
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.27633 b/externals/iem16/src/tab16send~.d.27633
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.27650 b/externals/iem16/src/tab16send~.d.27650
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.27896 b/externals/iem16/src/tab16send~.d.27896
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.27898 b/externals/iem16/src/tab16send~.d.27898
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.27964 b/externals/iem16/src/tab16send~.d.27964
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.2830 b/externals/iem16/src/tab16send~.d.2830
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.28327 b/externals/iem16/src/tab16send~.d.28327
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.2834 b/externals/iem16/src/tab16send~.d.2834
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.28477 b/externals/iem16/src/tab16send~.d.28477
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.28581 b/externals/iem16/src/tab16send~.d.28581
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.28648 b/externals/iem16/src/tab16send~.d.28648
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.28923 b/externals/iem16/src/tab16send~.d.28923
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.28933 b/externals/iem16/src/tab16send~.d.28933
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.29498 b/externals/iem16/src/tab16send~.d.29498
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.29514 b/externals/iem16/src/tab16send~.d.29514
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.2963 b/externals/iem16/src/tab16send~.d.2963
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.29952 b/externals/iem16/src/tab16send~.d.29952
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.30211 b/externals/iem16/src/tab16send~.d.30211
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.30739 b/externals/iem16/src/tab16send~.d.30739
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.30859 b/externals/iem16/src/tab16send~.d.30859
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.30912 b/externals/iem16/src/tab16send~.d.30912
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.31027 b/externals/iem16/src/tab16send~.d.31027
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.31118 b/externals/iem16/src/tab16send~.d.31118
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.31769 b/externals/iem16/src/tab16send~.d.31769
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.31838 b/externals/iem16/src/tab16send~.d.31838
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.3196 b/externals/iem16/src/tab16send~.d.3196
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.32038 b/externals/iem16/src/tab16send~.d.32038
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.32312 b/externals/iem16/src/tab16send~.d.32312
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.32374 b/externals/iem16/src/tab16send~.d.32374
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.32415 b/externals/iem16/src/tab16send~.d.32415
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.32495 b/externals/iem16/src/tab16send~.d.32495
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.32547 b/externals/iem16/src/tab16send~.d.32547
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.32604 b/externals/iem16/src/tab16send~.d.32604
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.3378 b/externals/iem16/src/tab16send~.d.3378
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.4117 b/externals/iem16/src/tab16send~.d.4117
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.4433 b/externals/iem16/src/tab16send~.d.4433
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.485 b/externals/iem16/src/tab16send~.d.485
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.5019 b/externals/iem16/src/tab16send~.d.5019
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.5163 b/externals/iem16/src/tab16send~.d.5163
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.5687 b/externals/iem16/src/tab16send~.d.5687
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.6316 b/externals/iem16/src/tab16send~.d.6316
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.6600 b/externals/iem16/src/tab16send~.d.6600
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.6769 b/externals/iem16/src/tab16send~.d.6769
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.6811 b/externals/iem16/src/tab16send~.d.6811
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.6823 b/externals/iem16/src/tab16send~.d.6823
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.7404 b/externals/iem16/src/tab16send~.d.7404
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.794 b/externals/iem16/src/tab16send~.d.794
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.8365 b/externals/iem16/src/tab16send~.d.8365
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.8366 b/externals/iem16/src/tab16send~.d.8366
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.8425 b/externals/iem16/src/tab16send~.d.8425
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.8605 b/externals/iem16/src/tab16send~.d.8605
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.8699 b/externals/iem16/src/tab16send~.d.8699
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.8785 b/externals/iem16/src/tab16send~.d.8785
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.9022 b/externals/iem16/src/tab16send~.d.9022
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.9101 b/externals/iem16/src/tab16send~.d.9101
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16send~.d.9753 b/externals/iem16/src/tab16send~.d.9753
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.10300 b/externals/iem16/src/tab16write.d.10300
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.10440 b/externals/iem16/src/tab16write.d.10440
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.10789 b/externals/iem16/src/tab16write.d.10789
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.11214 b/externals/iem16/src/tab16write.d.11214
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.11239 b/externals/iem16/src/tab16write.d.11239
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.11581 b/externals/iem16/src/tab16write.d.11581
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.11928 b/externals/iem16/src/tab16write.d.11928
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.12020 b/externals/iem16/src/tab16write.d.12020
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.12160 b/externals/iem16/src/tab16write.d.12160
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.12438 b/externals/iem16/src/tab16write.d.12438
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.12647 b/externals/iem16/src/tab16write.d.12647
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.12662 b/externals/iem16/src/tab16write.d.12662
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.1268 b/externals/iem16/src/tab16write.d.1268
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.12801 b/externals/iem16/src/tab16write.d.12801
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.13071 b/externals/iem16/src/tab16write.d.13071
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.13127 b/externals/iem16/src/tab16write.d.13127
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.13162 b/externals/iem16/src/tab16write.d.13162
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.13683 b/externals/iem16/src/tab16write.d.13683
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.13951 b/externals/iem16/src/tab16write.d.13951
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.14168 b/externals/iem16/src/tab16write.d.14168
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.14373 b/externals/iem16/src/tab16write.d.14373
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.14573 b/externals/iem16/src/tab16write.d.14573
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.14725 b/externals/iem16/src/tab16write.d.14725
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.14747 b/externals/iem16/src/tab16write.d.14747
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.14828 b/externals/iem16/src/tab16write.d.14828
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.15258 b/externals/iem16/src/tab16write.d.15258
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.1540 b/externals/iem16/src/tab16write.d.1540
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.15410 b/externals/iem16/src/tab16write.d.15410
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.15445 b/externals/iem16/src/tab16write.d.15445
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.15476 b/externals/iem16/src/tab16write.d.15476
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.15574 b/externals/iem16/src/tab16write.d.15574
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.1573 b/externals/iem16/src/tab16write.d.1573
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.15735 b/externals/iem16/src/tab16write.d.15735
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.16808 b/externals/iem16/src/tab16write.d.16808
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.16880 b/externals/iem16/src/tab16write.d.16880
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.17544 b/externals/iem16/src/tab16write.d.17544
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.17580 b/externals/iem16/src/tab16write.d.17580
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.17582 b/externals/iem16/src/tab16write.d.17582
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.17630 b/externals/iem16/src/tab16write.d.17630
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.17749 b/externals/iem16/src/tab16write.d.17749
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.1779 b/externals/iem16/src/tab16write.d.1779
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.17798 b/externals/iem16/src/tab16write.d.17798
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.18154 b/externals/iem16/src/tab16write.d.18154
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.18578 b/externals/iem16/src/tab16write.d.18578
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.19523 b/externals/iem16/src/tab16write.d.19523
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.19751 b/externals/iem16/src/tab16write.d.19751
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.19976 b/externals/iem16/src/tab16write.d.19976
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.20536 b/externals/iem16/src/tab16write.d.20536
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.20752 b/externals/iem16/src/tab16write.d.20752
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.20861 b/externals/iem16/src/tab16write.d.20861
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.21253 b/externals/iem16/src/tab16write.d.21253
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.21391 b/externals/iem16/src/tab16write.d.21391
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.21570 b/externals/iem16/src/tab16write.d.21570
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.21596 b/externals/iem16/src/tab16write.d.21596
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.21606 b/externals/iem16/src/tab16write.d.21606
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.21803 b/externals/iem16/src/tab16write.d.21803
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.21830 b/externals/iem16/src/tab16write.d.21830
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.21905 b/externals/iem16/src/tab16write.d.21905
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.23156 b/externals/iem16/src/tab16write.d.23156
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.23588 b/externals/iem16/src/tab16write.d.23588
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.2370 b/externals/iem16/src/tab16write.d.2370
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.23717 b/externals/iem16/src/tab16write.d.23717
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.23855 b/externals/iem16/src/tab16write.d.23855
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.2388 b/externals/iem16/src/tab16write.d.2388
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.23912 b/externals/iem16/src/tab16write.d.23912
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.23930 b/externals/iem16/src/tab16write.d.23930
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.24107 b/externals/iem16/src/tab16write.d.24107
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.24335 b/externals/iem16/src/tab16write.d.24335
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.24437 b/externals/iem16/src/tab16write.d.24437
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.24769 b/externals/iem16/src/tab16write.d.24769
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.2480 b/externals/iem16/src/tab16write.d.2480
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.24911 b/externals/iem16/src/tab16write.d.24911
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.2494 b/externals/iem16/src/tab16write.d.2494
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.25908 b/externals/iem16/src/tab16write.d.25908
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.26244 b/externals/iem16/src/tab16write.d.26244
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.26317 b/externals/iem16/src/tab16write.d.26317
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.27063 b/externals/iem16/src/tab16write.d.27063
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.27191 b/externals/iem16/src/tab16write.d.27191
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.27551 b/externals/iem16/src/tab16write.d.27551
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.27623 b/externals/iem16/src/tab16write.d.27623
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.27629 b/externals/iem16/src/tab16write.d.27629
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.27646 b/externals/iem16/src/tab16write.d.27646
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.27892 b/externals/iem16/src/tab16write.d.27892
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.27894 b/externals/iem16/src/tab16write.d.27894
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.27960 b/externals/iem16/src/tab16write.d.27960
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.2826 b/externals/iem16/src/tab16write.d.2826
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.2830 b/externals/iem16/src/tab16write.d.2830
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.28323 b/externals/iem16/src/tab16write.d.28323
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.28473 b/externals/iem16/src/tab16write.d.28473
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.28577 b/externals/iem16/src/tab16write.d.28577
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.28644 b/externals/iem16/src/tab16write.d.28644
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.28919 b/externals/iem16/src/tab16write.d.28919
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.28929 b/externals/iem16/src/tab16write.d.28929
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.29494 b/externals/iem16/src/tab16write.d.29494
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.29510 b/externals/iem16/src/tab16write.d.29510
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.2959 b/externals/iem16/src/tab16write.d.2959
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.29948 b/externals/iem16/src/tab16write.d.29948
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.30207 b/externals/iem16/src/tab16write.d.30207
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.30735 b/externals/iem16/src/tab16write.d.30735
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.30855 b/externals/iem16/src/tab16write.d.30855
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.30908 b/externals/iem16/src/tab16write.d.30908
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.31023 b/externals/iem16/src/tab16write.d.31023
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.31114 b/externals/iem16/src/tab16write.d.31114
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.31765 b/externals/iem16/src/tab16write.d.31765
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.31834 b/externals/iem16/src/tab16write.d.31834
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.3191 b/externals/iem16/src/tab16write.d.3191
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.32034 b/externals/iem16/src/tab16write.d.32034
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.32308 b/externals/iem16/src/tab16write.d.32308
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.32370 b/externals/iem16/src/tab16write.d.32370
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.32411 b/externals/iem16/src/tab16write.d.32411
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.32491 b/externals/iem16/src/tab16write.d.32491
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.32543 b/externals/iem16/src/tab16write.d.32543
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.32600 b/externals/iem16/src/tab16write.d.32600
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.3374 b/externals/iem16/src/tab16write.d.3374
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.4113 b/externals/iem16/src/tab16write.d.4113
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.4429 b/externals/iem16/src/tab16write.d.4429
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.481 b/externals/iem16/src/tab16write.d.481
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.5015 b/externals/iem16/src/tab16write.d.5015
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.5159 b/externals/iem16/src/tab16write.d.5159
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.5683 b/externals/iem16/src/tab16write.d.5683
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.6312 b/externals/iem16/src/tab16write.d.6312
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.6596 b/externals/iem16/src/tab16write.d.6596
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.6765 b/externals/iem16/src/tab16write.d.6765
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.6807 b/externals/iem16/src/tab16write.d.6807
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.6819 b/externals/iem16/src/tab16write.d.6819
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.7400 b/externals/iem16/src/tab16write.d.7400
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.790 b/externals/iem16/src/tab16write.d.790
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.8361 b/externals/iem16/src/tab16write.d.8361
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.8362 b/externals/iem16/src/tab16write.d.8362
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.8421 b/externals/iem16/src/tab16write.d.8421
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.8601 b/externals/iem16/src/tab16write.d.8601
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.8695 b/externals/iem16/src/tab16write.d.8695
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.8781 b/externals/iem16/src/tab16write.d.8781
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.9018 b/externals/iem16/src/tab16write.d.9018
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.9097 b/externals/iem16/src/tab16write.d.9097
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write.d.9749 b/externals/iem16/src/tab16write.d.9749
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.10296 b/externals/iem16/src/tab16write~.d.10296
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.10436 b/externals/iem16/src/tab16write~.d.10436
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.10785 b/externals/iem16/src/tab16write~.d.10785
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.11210 b/externals/iem16/src/tab16write~.d.11210
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.11235 b/externals/iem16/src/tab16write~.d.11235
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.11577 b/externals/iem16/src/tab16write~.d.11577
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.11924 b/externals/iem16/src/tab16write~.d.11924
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.12016 b/externals/iem16/src/tab16write~.d.12016
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.12156 b/externals/iem16/src/tab16write~.d.12156
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.12434 b/externals/iem16/src/tab16write~.d.12434
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.1249 b/externals/iem16/src/tab16write~.d.1249
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.12643 b/externals/iem16/src/tab16write~.d.12643
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.12658 b/externals/iem16/src/tab16write~.d.12658
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.12797 b/externals/iem16/src/tab16write~.d.12797
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.13067 b/externals/iem16/src/tab16write~.d.13067
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.13123 b/externals/iem16/src/tab16write~.d.13123
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.13158 b/externals/iem16/src/tab16write~.d.13158
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.13679 b/externals/iem16/src/tab16write~.d.13679
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.13947 b/externals/iem16/src/tab16write~.d.13947
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.14164 b/externals/iem16/src/tab16write~.d.14164
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.14369 b/externals/iem16/src/tab16write~.d.14369
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.14569 b/externals/iem16/src/tab16write~.d.14569
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.14721 b/externals/iem16/src/tab16write~.d.14721
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.14743 b/externals/iem16/src/tab16write~.d.14743
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.14824 b/externals/iem16/src/tab16write~.d.14824
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.15254 b/externals/iem16/src/tab16write~.d.15254
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.1536 b/externals/iem16/src/tab16write~.d.1536
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.15406 b/externals/iem16/src/tab16write~.d.15406
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.15441 b/externals/iem16/src/tab16write~.d.15441
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.15472 b/externals/iem16/src/tab16write~.d.15472
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.15570 b/externals/iem16/src/tab16write~.d.15570
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.1569 b/externals/iem16/src/tab16write~.d.1569
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.15731 b/externals/iem16/src/tab16write~.d.15731
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.16804 b/externals/iem16/src/tab16write~.d.16804
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.16876 b/externals/iem16/src/tab16write~.d.16876
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.17540 b/externals/iem16/src/tab16write~.d.17540
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.17576 b/externals/iem16/src/tab16write~.d.17576
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.17578 b/externals/iem16/src/tab16write~.d.17578
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.17626 b/externals/iem16/src/tab16write~.d.17626
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.17745 b/externals/iem16/src/tab16write~.d.17745
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.1775 b/externals/iem16/src/tab16write~.d.1775
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.17794 b/externals/iem16/src/tab16write~.d.17794
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.18150 b/externals/iem16/src/tab16write~.d.18150
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.18574 b/externals/iem16/src/tab16write~.d.18574
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.19519 b/externals/iem16/src/tab16write~.d.19519
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.19747 b/externals/iem16/src/tab16write~.d.19747
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.19972 b/externals/iem16/src/tab16write~.d.19972
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.20532 b/externals/iem16/src/tab16write~.d.20532
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.20748 b/externals/iem16/src/tab16write~.d.20748
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.20857 b/externals/iem16/src/tab16write~.d.20857
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.21249 b/externals/iem16/src/tab16write~.d.21249
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.21387 b/externals/iem16/src/tab16write~.d.21387
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.21566 b/externals/iem16/src/tab16write~.d.21566
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.21592 b/externals/iem16/src/tab16write~.d.21592
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.21602 b/externals/iem16/src/tab16write~.d.21602
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.21799 b/externals/iem16/src/tab16write~.d.21799
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.21826 b/externals/iem16/src/tab16write~.d.21826
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.21901 b/externals/iem16/src/tab16write~.d.21901
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.23152 b/externals/iem16/src/tab16write~.d.23152
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.23584 b/externals/iem16/src/tab16write~.d.23584
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.2366 b/externals/iem16/src/tab16write~.d.2366
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.23713 b/externals/iem16/src/tab16write~.d.23713
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.2384 b/externals/iem16/src/tab16write~.d.2384
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.23851 b/externals/iem16/src/tab16write~.d.23851
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.23908 b/externals/iem16/src/tab16write~.d.23908
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.23926 b/externals/iem16/src/tab16write~.d.23926
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.24103 b/externals/iem16/src/tab16write~.d.24103
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.24331 b/externals/iem16/src/tab16write~.d.24331
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.24433 b/externals/iem16/src/tab16write~.d.24433
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.2476 b/externals/iem16/src/tab16write~.d.2476
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.24765 b/externals/iem16/src/tab16write~.d.24765
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.2490 b/externals/iem16/src/tab16write~.d.2490
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.24907 b/externals/iem16/src/tab16write~.d.24907
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.25846 b/externals/iem16/src/tab16write~.d.25846
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.25904 b/externals/iem16/src/tab16write~.d.25904
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.26240 b/externals/iem16/src/tab16write~.d.26240
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.26313 b/externals/iem16/src/tab16write~.d.26313
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.27059 b/externals/iem16/src/tab16write~.d.27059
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.27187 b/externals/iem16/src/tab16write~.d.27187
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.27547 b/externals/iem16/src/tab16write~.d.27547
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.27619 b/externals/iem16/src/tab16write~.d.27619
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.27625 b/externals/iem16/src/tab16write~.d.27625
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.27642 b/externals/iem16/src/tab16write~.d.27642
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.27888 b/externals/iem16/src/tab16write~.d.27888
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.27890 b/externals/iem16/src/tab16write~.d.27890
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.27956 b/externals/iem16/src/tab16write~.d.27956
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.2822 b/externals/iem16/src/tab16write~.d.2822
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.2826 b/externals/iem16/src/tab16write~.d.2826
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.28319 b/externals/iem16/src/tab16write~.d.28319
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.28469 b/externals/iem16/src/tab16write~.d.28469
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.28573 b/externals/iem16/src/tab16write~.d.28573
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.28640 b/externals/iem16/src/tab16write~.d.28640
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.28915 b/externals/iem16/src/tab16write~.d.28915
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.28925 b/externals/iem16/src/tab16write~.d.28925
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.29490 b/externals/iem16/src/tab16write~.d.29490
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.29506 b/externals/iem16/src/tab16write~.d.29506
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.2955 b/externals/iem16/src/tab16write~.d.2955
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.29944 b/externals/iem16/src/tab16write~.d.29944
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.30203 b/externals/iem16/src/tab16write~.d.30203
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.30731 b/externals/iem16/src/tab16write~.d.30731
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.30851 b/externals/iem16/src/tab16write~.d.30851
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.30904 b/externals/iem16/src/tab16write~.d.30904
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.31019 b/externals/iem16/src/tab16write~.d.31019
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.31110 b/externals/iem16/src/tab16write~.d.31110
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.31761 b/externals/iem16/src/tab16write~.d.31761
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.31830 b/externals/iem16/src/tab16write~.d.31830
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.3187 b/externals/iem16/src/tab16write~.d.3187
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.32030 b/externals/iem16/src/tab16write~.d.32030
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.32304 b/externals/iem16/src/tab16write~.d.32304
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.32366 b/externals/iem16/src/tab16write~.d.32366
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.32407 b/externals/iem16/src/tab16write~.d.32407
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.32487 b/externals/iem16/src/tab16write~.d.32487
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.32539 b/externals/iem16/src/tab16write~.d.32539
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.32596 b/externals/iem16/src/tab16write~.d.32596
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.3370 b/externals/iem16/src/tab16write~.d.3370
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.4109 b/externals/iem16/src/tab16write~.d.4109
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.4425 b/externals/iem16/src/tab16write~.d.4425
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.477 b/externals/iem16/src/tab16write~.d.477
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.5011 b/externals/iem16/src/tab16write~.d.5011
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.5155 b/externals/iem16/src/tab16write~.d.5155
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.5679 b/externals/iem16/src/tab16write~.d.5679
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.6308 b/externals/iem16/src/tab16write~.d.6308
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.6592 b/externals/iem16/src/tab16write~.d.6592
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.6761 b/externals/iem16/src/tab16write~.d.6761
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.6803 b/externals/iem16/src/tab16write~.d.6803
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.6815 b/externals/iem16/src/tab16write~.d.6815
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.7396 b/externals/iem16/src/tab16write~.d.7396
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.786 b/externals/iem16/src/tab16write~.d.786
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.8357 b/externals/iem16/src/tab16write~.d.8357
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.8358 b/externals/iem16/src/tab16write~.d.8358
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.8417 b/externals/iem16/src/tab16write~.d.8417
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.8597 b/externals/iem16/src/tab16write~.d.8597
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.8691 b/externals/iem16/src/tab16write~.d.8691
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.8777 b/externals/iem16/src/tab16write~.d.8777
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.9014 b/externals/iem16/src/tab16write~.d.9014
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.9093 b/externals/iem16/src/tab16write~.d.9093
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/tab16write~.d.9745 b/externals/iem16/src/tab16write~.d.9745
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.10292 b/externals/iem16/src/table16.d.10292
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.10432 b/externals/iem16/src/table16.d.10432
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.10781 b/externals/iem16/src/table16.d.10781
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.11206 b/externals/iem16/src/table16.d.11206
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.11231 b/externals/iem16/src/table16.d.11231
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.11573 b/externals/iem16/src/table16.d.11573
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.11920 b/externals/iem16/src/table16.d.11920
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.12012 b/externals/iem16/src/table16.d.12012
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.12152 b/externals/iem16/src/table16.d.12152
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.1233 b/externals/iem16/src/table16.d.1233
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.12430 b/externals/iem16/src/table16.d.12430
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.12639 b/externals/iem16/src/table16.d.12639
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.12654 b/externals/iem16/src/table16.d.12654
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.12793 b/externals/iem16/src/table16.d.12793
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.13063 b/externals/iem16/src/table16.d.13063
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.13119 b/externals/iem16/src/table16.d.13119
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.13154 b/externals/iem16/src/table16.d.13154
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.13675 b/externals/iem16/src/table16.d.13675
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.13943 b/externals/iem16/src/table16.d.13943
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.14160 b/externals/iem16/src/table16.d.14160
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.14365 b/externals/iem16/src/table16.d.14365
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.14565 b/externals/iem16/src/table16.d.14565
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.14717 b/externals/iem16/src/table16.d.14717
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.14739 b/externals/iem16/src/table16.d.14739
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.14820 b/externals/iem16/src/table16.d.14820
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.15250 b/externals/iem16/src/table16.d.15250
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.1532 b/externals/iem16/src/table16.d.1532
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.15402 b/externals/iem16/src/table16.d.15402
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.15437 b/externals/iem16/src/table16.d.15437
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.15468 b/externals/iem16/src/table16.d.15468
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.15566 b/externals/iem16/src/table16.d.15566
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.1565 b/externals/iem16/src/table16.d.1565
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.15727 b/externals/iem16/src/table16.d.15727
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.16800 b/externals/iem16/src/table16.d.16800
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.16872 b/externals/iem16/src/table16.d.16872
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.17536 b/externals/iem16/src/table16.d.17536
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.17572 b/externals/iem16/src/table16.d.17572
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.17574 b/externals/iem16/src/table16.d.17574
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.17622 b/externals/iem16/src/table16.d.17622
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.1770 b/externals/iem16/src/table16.d.1770
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.17741 b/externals/iem16/src/table16.d.17741
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.17790 b/externals/iem16/src/table16.d.17790
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.18146 b/externals/iem16/src/table16.d.18146
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.18570 b/externals/iem16/src/table16.d.18570
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.19515 b/externals/iem16/src/table16.d.19515
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.19743 b/externals/iem16/src/table16.d.19743
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.19968 b/externals/iem16/src/table16.d.19968
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.20528 b/externals/iem16/src/table16.d.20528
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.20744 b/externals/iem16/src/table16.d.20744
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.20853 b/externals/iem16/src/table16.d.20853
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.21245 b/externals/iem16/src/table16.d.21245
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.21383 b/externals/iem16/src/table16.d.21383
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.21562 b/externals/iem16/src/table16.d.21562
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.21588 b/externals/iem16/src/table16.d.21588
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.21598 b/externals/iem16/src/table16.d.21598
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.21795 b/externals/iem16/src/table16.d.21795
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.21822 b/externals/iem16/src/table16.d.21822
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.21897 b/externals/iem16/src/table16.d.21897
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.23148 b/externals/iem16/src/table16.d.23148
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.23580 b/externals/iem16/src/table16.d.23580
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.2362 b/externals/iem16/src/table16.d.2362
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.23709 b/externals/iem16/src/table16.d.23709
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.2380 b/externals/iem16/src/table16.d.2380
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.23847 b/externals/iem16/src/table16.d.23847
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.23904 b/externals/iem16/src/table16.d.23904
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.23922 b/externals/iem16/src/table16.d.23922
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.24099 b/externals/iem16/src/table16.d.24099
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.24327 b/externals/iem16/src/table16.d.24327
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.24429 b/externals/iem16/src/table16.d.24429
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.2472 b/externals/iem16/src/table16.d.2472
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.24761 b/externals/iem16/src/table16.d.24761
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.2486 b/externals/iem16/src/table16.d.2486
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.24903 b/externals/iem16/src/table16.d.24903
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.25842 b/externals/iem16/src/table16.d.25842
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.25900 b/externals/iem16/src/table16.d.25900
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.26236 b/externals/iem16/src/table16.d.26236
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.26309 b/externals/iem16/src/table16.d.26309
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.27055 b/externals/iem16/src/table16.d.27055
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.27183 b/externals/iem16/src/table16.d.27183
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.27543 b/externals/iem16/src/table16.d.27543
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.27615 b/externals/iem16/src/table16.d.27615
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.27621 b/externals/iem16/src/table16.d.27621
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.27638 b/externals/iem16/src/table16.d.27638
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.27884 b/externals/iem16/src/table16.d.27884
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.27886 b/externals/iem16/src/table16.d.27886
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.27952 b/externals/iem16/src/table16.d.27952
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.2818 b/externals/iem16/src/table16.d.2818
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.2822 b/externals/iem16/src/table16.d.2822
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.28315 b/externals/iem16/src/table16.d.28315
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.28465 b/externals/iem16/src/table16.d.28465
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.28569 b/externals/iem16/src/table16.d.28569
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.28636 b/externals/iem16/src/table16.d.28636
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.28911 b/externals/iem16/src/table16.d.28911
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.28921 b/externals/iem16/src/table16.d.28921
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.29486 b/externals/iem16/src/table16.d.29486
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.29502 b/externals/iem16/src/table16.d.29502
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.2951 b/externals/iem16/src/table16.d.2951
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.29940 b/externals/iem16/src/table16.d.29940
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.30199 b/externals/iem16/src/table16.d.30199
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.30727 b/externals/iem16/src/table16.d.30727
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.30847 b/externals/iem16/src/table16.d.30847
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.30900 b/externals/iem16/src/table16.d.30900
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.31015 b/externals/iem16/src/table16.d.31015
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.31106 b/externals/iem16/src/table16.d.31106
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.31757 b/externals/iem16/src/table16.d.31757
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.31826 b/externals/iem16/src/table16.d.31826
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.3183 b/externals/iem16/src/table16.d.3183
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.32026 b/externals/iem16/src/table16.d.32026
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.32300 b/externals/iem16/src/table16.d.32300
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.32362 b/externals/iem16/src/table16.d.32362
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.32403 b/externals/iem16/src/table16.d.32403
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.32483 b/externals/iem16/src/table16.d.32483
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.32535 b/externals/iem16/src/table16.d.32535
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.32592 b/externals/iem16/src/table16.d.32592
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.3366 b/externals/iem16/src/table16.d.3366
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.4105 b/externals/iem16/src/table16.d.4105
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.473 b/externals/iem16/src/table16.d.473
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.5007 b/externals/iem16/src/table16.d.5007
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.5151 b/externals/iem16/src/table16.d.5151
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.5675 b/externals/iem16/src/table16.d.5675
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.6304 b/externals/iem16/src/table16.d.6304
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.6588 b/externals/iem16/src/table16.d.6588
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.6757 b/externals/iem16/src/table16.d.6757
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.6799 b/externals/iem16/src/table16.d.6799
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.6811 b/externals/iem16/src/table16.d.6811
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.7392 b/externals/iem16/src/table16.d.7392
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.782 b/externals/iem16/src/table16.d.782
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.8353 b/externals/iem16/src/table16.d.8353
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.8354 b/externals/iem16/src/table16.d.8354
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.8413 b/externals/iem16/src/table16.d.8413
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.8593 b/externals/iem16/src/table16.d.8593
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.8687 b/externals/iem16/src/table16.d.8687
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.8773 b/externals/iem16/src/table16.d.8773
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.9010 b/externals/iem16/src/table16.d.9010
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.9089 b/externals/iem16/src/table16.d.9089
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/table16.d.9741 b/externals/iem16/src/table16.d.9741
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.10288 b/externals/iem16/src/vd16~.d.10288
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.10428 b/externals/iem16/src/vd16~.d.10428
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.10777 b/externals/iem16/src/vd16~.d.10777
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.11202 b/externals/iem16/src/vd16~.d.11202
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.11227 b/externals/iem16/src/vd16~.d.11227
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.11569 b/externals/iem16/src/vd16~.d.11569
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.11916 b/externals/iem16/src/vd16~.d.11916
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.12008 b/externals/iem16/src/vd16~.d.12008
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.12148 b/externals/iem16/src/vd16~.d.12148
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.1223 b/externals/iem16/src/vd16~.d.1223
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.12426 b/externals/iem16/src/vd16~.d.12426
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.12635 b/externals/iem16/src/vd16~.d.12635
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.12650 b/externals/iem16/src/vd16~.d.12650
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.12789 b/externals/iem16/src/vd16~.d.12789
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.13059 b/externals/iem16/src/vd16~.d.13059
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.13115 b/externals/iem16/src/vd16~.d.13115
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.13150 b/externals/iem16/src/vd16~.d.13150
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.13671 b/externals/iem16/src/vd16~.d.13671
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.13939 b/externals/iem16/src/vd16~.d.13939
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.14156 b/externals/iem16/src/vd16~.d.14156
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.14361 b/externals/iem16/src/vd16~.d.14361
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.14561 b/externals/iem16/src/vd16~.d.14561
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.14713 b/externals/iem16/src/vd16~.d.14713
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.14735 b/externals/iem16/src/vd16~.d.14735
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.14816 b/externals/iem16/src/vd16~.d.14816
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.15246 b/externals/iem16/src/vd16~.d.15246
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.1528 b/externals/iem16/src/vd16~.d.1528
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.15398 b/externals/iem16/src/vd16~.d.15398
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.15433 b/externals/iem16/src/vd16~.d.15433
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.15464 b/externals/iem16/src/vd16~.d.15464
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.15562 b/externals/iem16/src/vd16~.d.15562
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.1561 b/externals/iem16/src/vd16~.d.1561
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.15723 b/externals/iem16/src/vd16~.d.15723
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.16796 b/externals/iem16/src/vd16~.d.16796
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.16868 b/externals/iem16/src/vd16~.d.16868
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.17532 b/externals/iem16/src/vd16~.d.17532
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.17568 b/externals/iem16/src/vd16~.d.17568
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.17570 b/externals/iem16/src/vd16~.d.17570
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.17618 b/externals/iem16/src/vd16~.d.17618
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.1766 b/externals/iem16/src/vd16~.d.1766
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.17737 b/externals/iem16/src/vd16~.d.17737
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.17786 b/externals/iem16/src/vd16~.d.17786
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.18142 b/externals/iem16/src/vd16~.d.18142
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.18566 b/externals/iem16/src/vd16~.d.18566
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.19511 b/externals/iem16/src/vd16~.d.19511
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.19739 b/externals/iem16/src/vd16~.d.19739
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.19964 b/externals/iem16/src/vd16~.d.19964
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.20524 b/externals/iem16/src/vd16~.d.20524
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.20740 b/externals/iem16/src/vd16~.d.20740
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.20849 b/externals/iem16/src/vd16~.d.20849
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.21241 b/externals/iem16/src/vd16~.d.21241
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.21379 b/externals/iem16/src/vd16~.d.21379
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.21558 b/externals/iem16/src/vd16~.d.21558
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.21584 b/externals/iem16/src/vd16~.d.21584
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.21594 b/externals/iem16/src/vd16~.d.21594
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.21791 b/externals/iem16/src/vd16~.d.21791
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.21818 b/externals/iem16/src/vd16~.d.21818
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.21893 b/externals/iem16/src/vd16~.d.21893
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.23144 b/externals/iem16/src/vd16~.d.23144
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.23576 b/externals/iem16/src/vd16~.d.23576
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.2358 b/externals/iem16/src/vd16~.d.2358
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.23705 b/externals/iem16/src/vd16~.d.23705
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.2376 b/externals/iem16/src/vd16~.d.2376
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.23843 b/externals/iem16/src/vd16~.d.23843
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.23900 b/externals/iem16/src/vd16~.d.23900
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.23918 b/externals/iem16/src/vd16~.d.23918
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.24095 b/externals/iem16/src/vd16~.d.24095
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.24323 b/externals/iem16/src/vd16~.d.24323
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.24425 b/externals/iem16/src/vd16~.d.24425
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.2467 b/externals/iem16/src/vd16~.d.2467
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.24757 b/externals/iem16/src/vd16~.d.24757
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.2482 b/externals/iem16/src/vd16~.d.2482
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.24899 b/externals/iem16/src/vd16~.d.24899
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.25838 b/externals/iem16/src/vd16~.d.25838
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.25896 b/externals/iem16/src/vd16~.d.25896
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.26232 b/externals/iem16/src/vd16~.d.26232
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.26305 b/externals/iem16/src/vd16~.d.26305
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.27051 b/externals/iem16/src/vd16~.d.27051
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.27179 b/externals/iem16/src/vd16~.d.27179
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.27539 b/externals/iem16/src/vd16~.d.27539
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.27611 b/externals/iem16/src/vd16~.d.27611
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.27617 b/externals/iem16/src/vd16~.d.27617
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.27634 b/externals/iem16/src/vd16~.d.27634
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.27880 b/externals/iem16/src/vd16~.d.27880
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.27882 b/externals/iem16/src/vd16~.d.27882
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.27948 b/externals/iem16/src/vd16~.d.27948
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.2814 b/externals/iem16/src/vd16~.d.2814
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.2818 b/externals/iem16/src/vd16~.d.2818
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.28311 b/externals/iem16/src/vd16~.d.28311
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.28461 b/externals/iem16/src/vd16~.d.28461
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.28565 b/externals/iem16/src/vd16~.d.28565
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.28632 b/externals/iem16/src/vd16~.d.28632
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.28907 b/externals/iem16/src/vd16~.d.28907
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.28917 b/externals/iem16/src/vd16~.d.28917
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.2947 b/externals/iem16/src/vd16~.d.2947
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.29482 b/externals/iem16/src/vd16~.d.29482
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.29498 b/externals/iem16/src/vd16~.d.29498
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.29936 b/externals/iem16/src/vd16~.d.29936
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.30195 b/externals/iem16/src/vd16~.d.30195
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.30723 b/externals/iem16/src/vd16~.d.30723
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.30843 b/externals/iem16/src/vd16~.d.30843
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.30896 b/externals/iem16/src/vd16~.d.30896
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.31011 b/externals/iem16/src/vd16~.d.31011
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.31102 b/externals/iem16/src/vd16~.d.31102
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.31753 b/externals/iem16/src/vd16~.d.31753
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.3179 b/externals/iem16/src/vd16~.d.3179
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.31822 b/externals/iem16/src/vd16~.d.31822
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.32022 b/externals/iem16/src/vd16~.d.32022
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.32296 b/externals/iem16/src/vd16~.d.32296
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.32358 b/externals/iem16/src/vd16~.d.32358
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.32399 b/externals/iem16/src/vd16~.d.32399
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.32479 b/externals/iem16/src/vd16~.d.32479
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.32531 b/externals/iem16/src/vd16~.d.32531
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.32588 b/externals/iem16/src/vd16~.d.32588
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.3362 b/externals/iem16/src/vd16~.d.3362
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.4101 b/externals/iem16/src/vd16~.d.4101
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.4417 b/externals/iem16/src/vd16~.d.4417
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.469 b/externals/iem16/src/vd16~.d.469
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.5003 b/externals/iem16/src/vd16~.d.5003
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.5147 b/externals/iem16/src/vd16~.d.5147
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.5671 b/externals/iem16/src/vd16~.d.5671
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.6300 b/externals/iem16/src/vd16~.d.6300
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.6584 b/externals/iem16/src/vd16~.d.6584
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.6753 b/externals/iem16/src/vd16~.d.6753
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.6795 b/externals/iem16/src/vd16~.d.6795
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.6807 b/externals/iem16/src/vd16~.d.6807
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.7388 b/externals/iem16/src/vd16~.d.7388
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.778 b/externals/iem16/src/vd16~.d.778
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.8349 b/externals/iem16/src/vd16~.d.8349
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.8350 b/externals/iem16/src/vd16~.d.8350
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.8409 b/externals/iem16/src/vd16~.d.8409
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.8589 b/externals/iem16/src/vd16~.d.8589
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.8683 b/externals/iem16/src/vd16~.d.8683
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.8769 b/externals/iem16/src/vd16~.d.8769
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.9006 b/externals/iem16/src/vd16~.d.9006
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.9085 b/externals/iem16/src/vd16~.d.9085
deleted file mode 100644
index e69de29bb..000000000
diff --git a/externals/iem16/src/vd16~.d.9737 b/externals/iem16/src/vd16~.d.9737
deleted file mode 100644
index e69de29bb..000000000
-- 
GitLab


From d8dfb24efb0f899e565b99b81c7a723e15776b95 Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Tue, 25 Jul 2017 00:53:49 -0400
Subject: [PATCH 16/98] triage iem16's lack of shared lib with statically
 declared copy/pasta functions

It appears iem16 is supposed to be built as a single binary. Unfortunately
Pd-extended broke these up into separate binaries without setting up a
sensible cross-platform shared library.

Thus Pd-extended had creation-order problems where, for example, the tab16
classes depended on a table16 to already exist so that the relevant symbols
could resolve properly.

We have no way of knowing how people were using these classes in the wild with
Pd-extended. To support old Pd-extended patches we just use copy/pasta for a
few functions so that any of the classes can get their objects instantiated
without depending on any of the other classes already existing.
---
 externals/iem16/src/del16read~.c    | 13 ++++++++
 externals/iem16/src/del16write~.c   |  2 +-
 externals/iem16/src/iem16_delay.h   | 51 +++++++++++++++++++++++++++++
 externals/iem16/src/iem16_table.h   |  4 +--
 externals/iem16/src/tab16play~.c    | 11 +++++++
 externals/iem16/src/tab16read.c     |  8 +++++
 externals/iem16/src/tab16read4.c    |  8 +++++
 externals/iem16/src/tab16read4~.c   | 11 +++++++
 externals/iem16/src/tab16read~.c    | 11 +++++++
 externals/iem16/src/tab16receive~.c | 12 +++++++
 externals/iem16/src/tab16send~.c    | 11 +++++++
 externals/iem16/src/tab16write~.c   | 13 ++++++++
 externals/iem16/src/vd16~.c         | 14 ++++++++
 13 files changed, 166 insertions(+), 3 deletions(-)
 create mode 100644 externals/iem16/src/iem16_delay.h

diff --git a/externals/iem16/src/del16read~.c b/externals/iem16/src/del16read~.c
index 99f71b8eb..cc148a9d5 100644
--- a/externals/iem16/src/del16read~.c
+++ b/externals/iem16/src/del16read~.c
@@ -21,6 +21,19 @@ typedef struct _sigdel16read{
   int x_zerodel;  	/* 0 or vecsize depending on read/write order */
 } t_sigdel16read;
 
+/* routine to check that all del16writes/del16reads/vds have same vecsize */
+/* copied from del16write~.c so that there's no dependency on del16write~
+   existing before we instantiate an object from this class. (Also because
+   I don't feel like adding and bugfixing a shared library across platforms */
+static void sigdel16write_checkvecsize(t_sigdel16write *x, int vecsize){
+  if (x->x_rsortno != ugen_getsortno())    {
+    x->x_vecsize = vecsize;
+    x->x_rsortno = ugen_getsortno();
+  }
+  else if (vecsize != x->x_vecsize)
+    pd_error(x, "del16read/del16write/vd vector size mismatch");
+}
+
 static void sigdel16read_16bit(t_sigdel16read *x, t_float f);
 
 static void *sigdel16read_new(t_symbol *s, t_floatarg f){
diff --git a/externals/iem16/src/del16write~.c b/externals/iem16/src/del16write~.c
index f3b447ef2..56f63237b 100644
--- a/externals/iem16/src/del16write~.c
+++ b/externals/iem16/src/del16write~.c
@@ -13,7 +13,7 @@
 /* ----------------------------- del16write~ ----------------------------- */
 
 /* routine to check that all del16writes/del16reads/vds have same vecsize */
-void sigdel16write_checkvecsize(t_sigdel16write *x, int vecsize){
+static void sigdel16write_checkvecsize(t_sigdel16write *x, int vecsize){
   if (x->x_rsortno != ugen_getsortno())    {
     x->x_vecsize = vecsize;
     x->x_rsortno = ugen_getsortno();
diff --git a/externals/iem16/src/iem16_delay.h b/externals/iem16/src/iem16_delay.h
new file mode 100644
index 000000000..acb58b3e6
--- /dev/null
+++ b/externals/iem16/src/iem16_delay.h
@@ -0,0 +1,51 @@
+/* copyleft (c) 2003 forum::für::umläute -- IOhannes m zmölnig @ IEM
+ * based on d_array.c from pd:
+ * Copyright (c) 1997-1999 Miller Puckette and others.
+ * For information on usage and redistribution, and for a DISCLAIMER OF ALL
+ * WARRANTIES, see the file, "LICENSE.txt," in this distribution.  */
+
+#ifndef INCLUDE_IEM16_DELAY_H__
+#define INCLUDE_IEM16_DELAY_H__
+
+/* sampling */
+
+#include "iem16.h"
+#include <string.h>
+
+
+#if defined __WIN32 || defined __WIN32__
+static int ugen_getsortno(void){return 0;}
+#else
+extern int ugen_getsortno(void);
+#endif
+
+
+t_class *sigdel16write_class;
+
+typedef struct del16writectl{
+  int c_n;
+  t_iem16_16bit *c_vec;
+  int c_phase;
+} t_del16writectl;
+
+typedef struct _sigdel16write{
+  t_object x_obj;
+  t_symbol *x_sym;
+  t_del16writectl x_cspace;
+  int x_sortno;   /* DSP sort number at which this was last put on chain */
+  int x_rsortno;  /* DSP sort # for first del16read or write in chain */
+  int x_vecsize;  /* vector size for del16read~ to use */
+  float x_f;
+} t_sigdel16write;
+
+
+//void sigdel16write_checkvecsize(t_sigdel16write *x, int vecsize);
+
+
+# define XTRASAMPS 4
+# define SAMPBLK 4
+
+
+#define DEFDELVS 64	    	/* LATER get this from canvas at DSP time */
+
+#endif
diff --git a/externals/iem16/src/iem16_table.h b/externals/iem16/src/iem16_table.h
index 506fd8ae3..fb3d179c3 100644
--- a/externals/iem16/src/iem16_table.h
+++ b/externals/iem16/src/iem16_table.h
@@ -27,8 +27,8 @@ typedef struct _table16 {
 } t_table16;
 
 
-EXTERN int table16_getarray16(t_table16*x, int*size,t_iem16_16bit**vec);
-EXTERN void table16_usedindsp(t_table16*x);
+//EXTERN int table16_getarray16(t_table16*x, int*size,t_iem16_16bit**vec);
+//EXTERN void table16_usedindsp(t_table16*x);
 
 
 
diff --git a/externals/iem16/src/tab16play~.c b/externals/iem16/src/tab16play~.c
index 0fd1049bd..4af5df75d 100644
--- a/externals/iem16/src/tab16play~.c
+++ b/externals/iem16/src/tab16play~.c
@@ -8,6 +8,17 @@
 
 #include "iem16_table.h"
 
+/* the following two functions are copied from table16.c so that each class can
+   be instantiated without a dependency on table16 already existing */
+static int table16_getarray16(t_table16*x, int*size,t_iem16_16bit**vec){
+  *size=x->x_size;
+  *vec =x->x_table;
+  return 1;
+}
+
+static void table16_usedindsp(t_table16*x){
+  x->x_usedindsp=1;
+}
 
 /* ------------ tab16play~ - non-transposing sample playback --------------- */
 
diff --git a/externals/iem16/src/tab16read.c b/externals/iem16/src/tab16read.c
index 17b6c5c84..20a2e865f 100644
--- a/externals/iem16/src/tab16read.c
+++ b/externals/iem16/src/tab16read.c
@@ -8,6 +8,14 @@
 
 #include "iem16_table.h"
 
+/* the following function is copied from table16.c so that each class can
+   be instantiated without a dependency on table16 already existing */
+static int table16_getarray16(t_table16*x, int*size,t_iem16_16bit**vec){
+  *size=x->x_size;
+  *vec =x->x_table;
+  return 1;
+}
+
 /* ---------- tab16read: control, non-interpolating ------------------------ */
 
 static t_class *tab16read_class;
diff --git a/externals/iem16/src/tab16read4.c b/externals/iem16/src/tab16read4.c
index 0d379791a..cebcf8413 100644
--- a/externals/iem16/src/tab16read4.c
+++ b/externals/iem16/src/tab16read4.c
@@ -8,6 +8,14 @@
 
 #include "iem16_table.h"
 
+/* the following function is copied from table16.c so that each class can
+   be instantiated without a dependency on table16 already existing */
+static int table16_getarray16(t_table16*x, int*size,t_iem16_16bit**vec){
+  *size=x->x_size;
+  *vec =x->x_table;
+  return 1;
+}
+
 /* ---------- tab16read4: control, non-interpolating ------------------------ */
 
 static t_class *tab16read4_class;
diff --git a/externals/iem16/src/tab16read4~.c b/externals/iem16/src/tab16read4~.c
index 7f2ed85f6..c85ea0e55 100644
--- a/externals/iem16/src/tab16read4~.c
+++ b/externals/iem16/src/tab16read4~.c
@@ -8,6 +8,17 @@
 
 #include "iem16_table.h"
 
+/* the following two functions are copied from table16.c so that each class can
+   be instantiated without a dependency on table16 already existing */
+static int table16_getarray16(t_table16*x, int*size,t_iem16_16bit**vec){
+  *size=x->x_size;
+  *vec =x->x_table;
+  return 1;
+}
+
+static void table16_usedindsp(t_table16*x){
+  x->x_usedindsp=1;
+}
 
 /******************** tab16read4~ ***********************/
 
diff --git a/externals/iem16/src/tab16read~.c b/externals/iem16/src/tab16read~.c
index 9f5657587..e384bb806 100644
--- a/externals/iem16/src/tab16read~.c
+++ b/externals/iem16/src/tab16read~.c
@@ -8,6 +8,17 @@
 
 #include "iem16_table.h"
 
+/* the following two functions are copied from table16.c so that each class can
+   be instantiated without a dependency on table16 already existing */
+static int table16_getarray16(t_table16*x, int*size,t_iem16_16bit**vec){
+  *size=x->x_size;
+  *vec =x->x_table;
+  return 1;
+}
+
+static void table16_usedindsp(t_table16*x){
+  x->x_usedindsp=1;
+}
 
 /******************** tab16read~ ***********************/
 
diff --git a/externals/iem16/src/tab16receive~.c b/externals/iem16/src/tab16receive~.c
index 2aaf0a8ef..6eaa8d698 100644
--- a/externals/iem16/src/tab16receive~.c
+++ b/externals/iem16/src/tab16receive~.c
@@ -8,6 +8,18 @@
 
 #include "iem16_table.h"
 
+/* the following two functions are copied from table16.c so that each class can
+   be instantiated without a dependency on table16 already existing */
+static int table16_getarray16(t_table16*x, int*size,t_iem16_16bit**vec){
+  *size=x->x_size;
+  *vec =x->x_table;
+  return 1;
+}
+
+static void table16_usedindsp(t_table16*x){
+  x->x_usedindsp=1;
+}
+
 /* ------------------------ tab16receive~ ------------------------- */
 
 static t_class *tab16receive_class;
diff --git a/externals/iem16/src/tab16send~.c b/externals/iem16/src/tab16send~.c
index 50105a06f..9e8ede542 100644
--- a/externals/iem16/src/tab16send~.c
+++ b/externals/iem16/src/tab16send~.c
@@ -8,6 +8,17 @@
 
 #include "iem16_table.h"
 
+/* the following two functions are copied from table16.c so that each class can
+   be instantiated without a dependency on table16 already existing */
+static int table16_getarray16(t_table16*x, int*size,t_iem16_16bit**vec){
+  *size=x->x_size;
+  *vec =x->x_table;
+  return 1;
+}
+
+static void table16_usedindsp(t_table16*x){
+  x->x_usedindsp=1;
+}
 
 /* ------------------------ tab16send~ ------------------------- */
 
diff --git a/externals/iem16/src/tab16write~.c b/externals/iem16/src/tab16write~.c
index dc3f47018..f88574311 100644
--- a/externals/iem16/src/tab16write~.c
+++ b/externals/iem16/src/tab16write~.c
@@ -8,6 +8,19 @@
 
 #include "iem16_table.h"
 
+/* the following two functions are copied from table16.c so that each class can
+   be instantiated without a dependency on table16 already existing */
+static int table16_getarray16(t_table16*x, int*size,t_iem16_16bit**vec){
+  *size=x->x_size;
+  *vec =x->x_table;
+  return 1;
+}
+
+static void table16_usedindsp(t_table16*x){
+  x->x_usedindsp=1;
+}
+
+
 /* ------------------------- tab16write~ -------------------------- */
 
 static t_class *tab16write_tilde_class;
diff --git a/externals/iem16/src/vd16~.c b/externals/iem16/src/vd16~.c
index c3387fec5..7a85eefb0 100644
--- a/externals/iem16/src/vd16~.c
+++ b/externals/iem16/src/vd16~.c
@@ -19,6 +19,20 @@ typedef struct _sig16vd{
   float x_f;
 } t_sig16vd;
 
+
+/* routine to check that all del16writes/del16reads/vds have same vecsize */
+/* copied from del16write~.c so that there's no dependency on del16write~
+   existing before we instantiate an object from this class. (Also because
+   I don't feel like adding and bugfixing a shared library across platforms */
+static void sigdel16write_checkvecsize(t_sigdel16write *x, int vecsize){
+  if (x->x_rsortno != ugen_getsortno())    {
+    x->x_vecsize = vecsize;
+    x->x_rsortno = ugen_getsortno();
+  }
+  else if (vecsize != x->x_vecsize)
+    pd_error(x, "del16read/del16write/vd vector size mismatch");
+}
+
 static void *sig16vd_new(t_symbol *s){
   t_sig16vd *x = (t_sig16vd *)pd_new(sig16vd_class);
   if (!*s->s_name) s = gensym("vd~");
-- 
GitLab


From 82e7b7577432e0a77302eec9039eacde0374fcbc Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Tue, 25 Jul 2017 21:02:49 -0400
Subject: [PATCH 17/98] allow all iem_adaptfilt objects to load without
 arguments

---
 externals/iem/iem_adaptfilt/src/NLMSCC~.c     | 17 ++++++++++++++++-
 externals/iem/iem_adaptfilt/src/NLMSerr_in~.c | 15 ++++++++++++++-
 externals/iem/iem_adaptfilt/src/NLMS~.c       | 13 +++++++++++++
 externals/iem/iem_adaptfilt/src/n_CLNLMS~.c   | 17 +++++++++++++++++
 externals/iem/iem_adaptfilt/src/n_CNLMS~.c    | 18 +++++++++++++++++-
 5 files changed, 77 insertions(+), 3 deletions(-)

diff --git a/externals/iem/iem_adaptfilt/src/NLMSCC~.c b/externals/iem/iem_adaptfilt/src/NLMSCC~.c
index 48f501aca..5824e1fb9 100644
--- a/externals/iem/iem_adaptfilt/src/NLMSCC~.c
+++ b/externals/iem/iem_adaptfilt/src/NLMSCC~.c
@@ -313,7 +313,22 @@ static void *NLMSCC_tilde_new(t_symbol *s, t_int argc, t_atom *argv)
     t_symbol    *wmax_name;
     t_float beta=0.1f;
     t_float gammax=0.00001f;
-    
+    t_atom sane_defaults[6];
+
+    if (!argc)
+    {
+        post("NLMSCC~: warning: no arguments supplied: setting default values "
+             "to [NLMSCC~ 2 0.1 0.00001 a b c]");
+        SETFLOAT(sane_defaults, 2.);
+        SETFLOAT(sane_defaults+1, 0.1);
+        SETFLOAT(sane_defaults+2, 0.00001);
+        SETSYMBOL(sane_defaults+3, gensym("a"));
+        SETSYMBOL(sane_defaults+4, gensym("b"));
+        SETSYMBOL(sane_defaults+5, gensym("c"));
+        argc = 6;
+        argv = sane_defaults;
+    }
+
     if((argc >= 6) &&
         IS_A_FLOAT(argv,0) &&   //IS_A_FLOAT/SYMBOL from iemlib.h
         IS_A_FLOAT(argv,1) &&
diff --git a/externals/iem/iem_adaptfilt/src/NLMSerr_in~.c b/externals/iem/iem_adaptfilt/src/NLMSerr_in~.c
index f48f302cd..b0f300e67 100644
--- a/externals/iem/iem_adaptfilt/src/NLMSerr_in~.c
+++ b/externals/iem/iem_adaptfilt/src/NLMSerr_in~.c
@@ -221,7 +221,20 @@ static void *NLMSerr_in_tilde_new(t_symbol *s, t_int argc, t_atom *argv)
     t_symbol    *w_name;
     t_float beta=0.01f;
     t_float gammax=0.00001f;
-    
+    t_atom sane_defaults[4];
+
+    if (!argc)
+    {
+        post("NLMSerr_in~: warning: no arguments supplied: setting default "
+             "values to [NLMSerr_in~ 2 0.01 0.00001 a]");
+        SETFLOAT(sane_defaults, 2.);
+        SETFLOAT(sane_defaults+1, 0.01);
+        SETFLOAT(sane_defaults+2, 0.00001);
+        SETSYMBOL(sane_defaults+3, gensym("a"));
+        argc = 4;
+        argv = sane_defaults;
+    }
+
     if((argc >= 4) &&
         IS_A_FLOAT(argv,0) &&   //IS_A_FLOAT/SYMBOL from iemlib.h
         IS_A_FLOAT(argv,1) &&
diff --git a/externals/iem/iem_adaptfilt/src/NLMS~.c b/externals/iem/iem_adaptfilt/src/NLMS~.c
index f54efc64d..ee225baa1 100644
--- a/externals/iem/iem_adaptfilt/src/NLMS~.c
+++ b/externals/iem/iem_adaptfilt/src/NLMS~.c
@@ -266,7 +266,20 @@ static void *NLMS_tilde_new(t_symbol *s, t_int argc, t_atom *argv)
     t_symbol    *w_name;
     t_float beta=0.1f;
     t_float gammax=0.00001f;
+    t_atom sane_defaults[4];
     
+    if (!argc)
+    {
+        post("NLMS~: warning: no arguments supplied: setting default "
+             "values to [NLMS~ 2 0.1 0.00001 a]");
+        SETFLOAT(sane_defaults, 2.);
+        SETFLOAT(sane_defaults+1, 0.1);
+        SETFLOAT(sane_defaults+2, 0.00001);
+        SETSYMBOL(sane_defaults+3, gensym("a"));
+        argc = 4;
+        argv = sane_defaults;
+    }
+
     if((argc >= 4) &&
         IS_A_FLOAT(argv,0) &&   //IS_A_FLOAT/SYMBOL from iemlib.h
         IS_A_FLOAT(argv,1) &&
diff --git a/externals/iem/iem_adaptfilt/src/n_CLNLMS~.c b/externals/iem/iem_adaptfilt/src/n_CLNLMS~.c
index 3153c0b98..23a00d8d4 100644
--- a/externals/iem/iem_adaptfilt/src/n_CLNLMS~.c
+++ b/externals/iem/iem_adaptfilt/src/n_CLNLMS~.c
@@ -406,6 +406,23 @@ static void *n_CLNLMS_tilde_new(t_symbol *s, t_int argc, t_atom *argv)
   t_float gammax=0.00001f;
   t_float kappa = 1.0f;
   t_float leakage = 0.99f;
+  t_atom sane_defaults[7];
+
+  if (!argc)
+  {
+    post("n_CLNLMS~: warning: no arguments supplied: setting default "
+         "values to [n_CLNLMS~ 1 2 0.1 0.00001 1 0.99 a]");
+    SETFLOAT(sane_defaults, 1.);
+    SETFLOAT(sane_defaults+1, 2.);
+    SETFLOAT(sane_defaults+2, 0.1);
+    SETFLOAT(sane_defaults+3, 0.00001);
+    SETFLOAT(sane_defaults+4, 1);
+    SETFLOAT(sane_defaults+5, 0.99);
+    SETSYMBOL(sane_defaults+6, gensym("a"));
+    argc = 7;
+    argv = sane_defaults;
+  }
+
   
   if((argc >= 7) &&
     IS_A_FLOAT(argv,0) &&   //IS_A_FLOAT/SYMBOL from iemlib.h
diff --git a/externals/iem/iem_adaptfilt/src/n_CNLMS~.c b/externals/iem/iem_adaptfilt/src/n_CNLMS~.c
index d1d6b5140..1b636fc61 100644
--- a/externals/iem/iem_adaptfilt/src/n_CNLMS~.c
+++ b/externals/iem/iem_adaptfilt/src/n_CNLMS~.c
@@ -394,7 +394,23 @@ static void *n_CNLMS_tilde_new(t_symbol *s, t_int argc, t_atom *argv)
   t_float beta=0.1f;
   t_float gammax=0.00001f;
   t_float kappa = 1.0f;
-  
+  t_atom sane_defaults[6];
+
+  if (!argc)
+  {
+    post("n_CNLMS~: warning: no arguments supplied: setting default "
+         "values to [n_CLNLMS~ 1 2 0.1 0.00001 1 0.99 a]");
+    SETFLOAT(sane_defaults, 1.);
+    SETFLOAT(sane_defaults+1, 2.);
+    SETFLOAT(sane_defaults+2, 0.1);
+    SETFLOAT(sane_defaults+3, 0.00001);
+    SETFLOAT(sane_defaults+4, 1);
+    SETSYMBOL(sane_defaults+5, gensym("a"));
+    argc = 6;
+    argv = sane_defaults;
+  }
+
+
   if((argc >= 6) &&
     IS_A_FLOAT(argv,0) &&   //IS_A_FLOAT/SYMBOL from iemlib.h
     IS_A_FLOAT(argv,1) &&
-- 
GitLab


From 533888d2daff17041b5fc1bb0f9f2eca24d8aa52 Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Tue, 25 Jul 2017 21:04:49 -0400
Subject: [PATCH 18/98] allow all iem_ambi objects to instantiate without
 arguments

---
 externals/iem/iem_ambi/src/ambi_decode.c      | 12 ++++++++++++
 externals/iem/iem_ambi/src/ambi_decode2.c     | 14 ++++++++++++++
 externals/iem/iem_ambi/src/ambi_decode3.c     | 13 +++++++++++++
 externals/iem/iem_ambi/src/ambi_decode_cube.c | 13 +++++++++++++
 4 files changed, 52 insertions(+)

diff --git a/externals/iem/iem_ambi/src/ambi_decode.c b/externals/iem/iem_ambi/src/ambi_decode.c
index 2e315bc3c..1dcd5adf3 100644
--- a/externals/iem/iem_ambi/src/ambi_decode.c
+++ b/externals/iem/iem_ambi/src/ambi_decode.c
@@ -626,6 +626,18 @@ static void *ambi_decode_new(t_symbol *s, int argc, t_atom *argv)
 	t_ambi_decode *x = (t_ambi_decode *)pd_new(ambi_decode_class);
 	int nls, order, dim, i;
 	int nphls=0;/* phantom_loudspeaker */
+        t_atom sane_defaults[3];
+
+        if(!argc)
+        {
+                post("ambi_decode: warning: no arguments provided: setting to "
+                     "[ambi_decode 1 2 1]");
+                SETFLOAT(sane_defaults, 1.);
+                SETFLOAT(sane_defaults+1, 2.);
+                SETFLOAT(sane_defaults+2, 1.);
+                argc = 3;
+                argv = sane_defaults;
+        }
 
 	if(argc < 3)
 	{
diff --git a/externals/iem/iem_ambi/src/ambi_decode2.c b/externals/iem/iem_ambi/src/ambi_decode2.c
index c14e84fbf..cc154400b 100644
--- a/externals/iem/iem_ambi/src/ambi_decode2.c
+++ b/externals/iem/iem_ambi/src/ambi_decode2.c
@@ -718,6 +718,20 @@ static void *ambi_decode2_new(t_symbol *s, int argc, t_atom *argv)
 	int n_ls=0;/* number of loudspeakers */
 	int n_mir_ls=0;/* number of mirror_loudspeakers */
 	int n_ph_ls=0;/* number of phantom_loudspeakers */
+        t_atom sane_defaults[5];
+
+        if(!argc)
+        {
+                post("ambi_decode2: warning: no arguments provided: setting to "
+                     "[ambi_decode2 1 2 1 0 0]");
+                SETFLOAT(sane_defaults, 1.);
+                SETFLOAT(sane_defaults+1, 2.);
+                SETFLOAT(sane_defaults+2, 1.);
+                SETFLOAT(sane_defaults+3, 0.);
+                SETFLOAT(sane_defaults+4, 0.);
+                argc = 5;
+                argv = sane_defaults;
+        }
 
 	if((argc >= 5) &&
 		IS_A_FLOAT(argv,0) &&
diff --git a/externals/iem/iem_ambi/src/ambi_decode3.c b/externals/iem/iem_ambi/src/ambi_decode3.c
index 46302da9a..5bad7f868 100644
--- a/externals/iem/iem_ambi/src/ambi_decode3.c
+++ b/externals/iem/iem_ambi/src/ambi_decode3.c
@@ -662,6 +662,19 @@ static void *ambi_decode3_new(t_symbol *s, int argc, t_atom *argv)
 	int order, dim, i;
 	int n_real_ls=0;/* number of loudspeakers */
 	int n_pht_ls=0;/* number of phantom_loudspeakers */
+        t_atom sane_defaults[4];
+
+        if(!argc)
+        {
+                post("ambi_decode3: warning: no arguments provided: setting to "
+                     "[ambi_decode3 1 2 1 0]");
+                SETFLOAT(sane_defaults, 1.);
+                SETFLOAT(sane_defaults+1, 2.);
+                SETFLOAT(sane_defaults+2, 1.);
+                SETFLOAT(sane_defaults+3, 0.);
+                argc = 4;
+                argv = sane_defaults;
+        }
 
 	if((argc >= 4) &&
 		IS_A_FLOAT(argv,0) &&
diff --git a/externals/iem/iem_ambi/src/ambi_decode_cube.c b/externals/iem/iem_ambi/src/ambi_decode_cube.c
index a30b421a4..26160b9db 100644
--- a/externals/iem/iem_ambi/src/ambi_decode_cube.c
+++ b/externals/iem/iem_ambi/src/ambi_decode_cube.c
@@ -695,6 +695,19 @@ static void *ambi_decode_cube_new(t_symbol *s, int argc, t_atom *argv)
 	t_ambi_decode_cube *x = (t_ambi_decode_cube *)pd_new(ambi_decode_cube_class);
 	int nls, order, dim, i;
 	int nphls=0;/* phantom_loudspeaker */
+        t_atom sane_defaults[3];
+
+        if(!argc)
+        {
+                post("ambi_decode_cube: warning: no arguments provided: "
+                     "setting to [ambi_decode_cube 1 2 1]");
+                SETFLOAT(sane_defaults, 1.);
+                SETFLOAT(sane_defaults+1, 2.);
+                SETFLOAT(sane_defaults+2, 1.);
+                argc = 3;
+                argv = sane_defaults;
+        }
+
 
 	if(argc < 3)
 	{
-- 
GitLab


From 13dc22ece33d1e93aa1af300680614a5524db9d9 Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Wed, 26 Jul 2017 20:14:58 -0400
Subject: [PATCH 19/98] allow all bin_ambi objects to instantiate without any
 arguments

---
 .../iem/iem_bin_ambi/src/bin_ambi_calc_HRTF.c | 23 +++++++-
 .../src/bin_ambi_reduced_decode.c             | 59 ++++++++++++-------
 .../src/bin_ambi_reduced_decode2.c            | 20 ++++++-
 .../src/bin_ambi_reduced_decode_fft.c         | 44 ++++++++++----
 .../src/bin_ambi_reduced_decode_fft2.c        | 21 +++++++
 .../src/bin_ambi_reduced_decode_fir.c         | 33 +++++++++--
 .../src/bin_ambi_reduced_decode_fir2.c        | 24 +++++++-
 7 files changed, 180 insertions(+), 44 deletions(-)

diff --git a/externals/iem/iem_bin_ambi/src/bin_ambi_calc_HRTF.c b/externals/iem/iem_bin_ambi/src/bin_ambi_calc_HRTF.c
index f2ea70f8a..b20836c95 100644
--- a/externals/iem/iem_bin_ambi/src/bin_ambi_calc_HRTF.c
+++ b/externals/iem/iem_bin_ambi/src/bin_ambi_calc_HRTF.c
@@ -470,9 +470,26 @@ static void *bin_ambi_calc_HRTF_new(t_symbol *s, int argc, t_atom *argv)
 	char buf[400];
 	int i, j, fftok;
 	int n_ls, fftsize;
-	t_symbol	*s_hrir;
-	t_symbol	*s_hrtf_re;
-	t_symbol	*s_hrtf_im;
+	t_symbol	*s_hrir = gensym("L_HRIR");
+	t_symbol	*s_hrtf_re = gensym("HRTF_re");
+	t_symbol	*s_hrtf_im = gensym("HRTF_im");
+        t_atom sane_defaults[6];
+
+        if(!argc)
+        {
+                post("bin_ambi_calc_HRTF: warning: no arguments provided: "
+                     "setting to [bin_ambi_calc_HRTF L_HRIR HRTF_re HRTF_im "
+                     "HRIR_win 1 512]");
+                SETSYMBOL(sane_defaults, s_hrir);
+                SETSYMBOL(sane_defaults+1, s_hrtf_re);
+                SETSYMBOL(sane_defaults+2, s_hrtf_im);
+                SETSYMBOL(sane_defaults+3, gensym("HRIR_win"));
+                SETFLOAT(sane_defaults+4, 1.);
+                SETFLOAT(sane_defaults+5, 512.);
+                argc = 6;
+                argv = sane_defaults;
+        }
+
 
 	if((argc >= 6) &&
 		IS_A_SYMBOL(argv,0) &&
diff --git a/externals/iem/iem_bin_ambi/src/bin_ambi_reduced_decode.c b/externals/iem/iem_bin_ambi/src/bin_ambi_reduced_decode.c
index ee1abd616..44188e08b 100644
--- a/externals/iem/iem_bin_ambi/src/bin_ambi_reduced_decode.c
+++ b/externals/iem/iem_bin_ambi/src/bin_ambi_reduced_decode.c
@@ -1086,11 +1086,28 @@ static void *bin_ambi_reduced_decode_new(t_symbol *s, int argc, t_atom *argv)
 	t_symbol	*s_hrir=gensym("L_HRIR");
 	t_symbol	*s_hrtf_re=gensym("HRTF_re");
 	t_symbol	*s_hrtf_im=gensym("HRTF_im");
-  t_symbol  *s_fade_out_hrir=gensym("HRIR_win");
+	t_symbol  *s_fade_out_hrir=gensym("HRIR_win");
+        t_atom sane_defaults[8];
+
+        if(!argc)
+        {
+                post("bin_ambi_reduced_decode: warning: no arguments provided: "
+                     "setting to [bin_ambi_reduced_decode 1 2 1]");
+                SETFLOAT(sane_defaults, 0.);
+                SETSYMBOL(sane_defaults+1, s_hrir);
+                SETSYMBOL(sane_defaults+2, s_hrtf_re);
+                SETSYMBOL(sane_defaults+3, s_hrtf_im);
+                SETSYMBOL(sane_defaults+4, s_fade_out_hrir);
+                SETFLOAT(sane_defaults+5, 1.);
+                SETFLOAT(sane_defaults+6, 2.);
+                SETFLOAT(sane_defaults+7, 512.);
+                argc = 8;
+                argv = sane_defaults;
+        }
 
 	if((argc >= 8) &&
 		IS_A_FLOAT(argv,0) &&
-    IS_A_SYMBOL(argv,1) &&
+		IS_A_SYMBOL(argv,1) &&
 		IS_A_SYMBOL(argv,2) &&
 		IS_A_SYMBOL(argv,3) &&
 		IS_A_SYMBOL(argv,4) &&
@@ -1100,10 +1117,10 @@ static void *bin_ambi_reduced_decode_new(t_symbol *s, int argc, t_atom *argv)
 	{
 		prefix	= (int)atom_getintarg(0, argc, argv);
 
-		s_hrir								= (t_symbol *)atom_getsymbolarg(1, argc, argv);
-		s_hrtf_re							= (t_symbol *)atom_getsymbolarg(2, argc, argv);
-		s_hrtf_im							= (t_symbol *)atom_getsymbolarg(3, argc, argv);
-		s_fade_out_hrir	      = (t_symbol *)atom_getsymbolarg(4, argc, argv);
+		s_hrir = (t_symbol *)atom_getsymbolarg(1, argc, argv);
+		s_hrtf_re = (t_symbol *)atom_getsymbolarg(2, argc, argv);
+		s_hrtf_im = (t_symbol *)atom_getsymbolarg(3, argc, argv);
+		s_fade_out_hrir = (t_symbol *)atom_getsymbolarg(4, argc, argv);
 
 		n_order	= (int)atom_getintarg(5, argc, argv);
 		n_dim		= (int)atom_getintarg(6, argc, argv);
@@ -1113,7 +1130,7 @@ static void *bin_ambi_reduced_decode_new(t_symbol *s, int argc, t_atom *argv)
 	}
 	else if((argc >= 8) &&
 		IS_A_FLOAT(argv,0) &&
-    IS_A_FLOAT(argv,1) &&
+		IS_A_FLOAT(argv,1) &&
 		IS_A_FLOAT(argv,2) &&
 		IS_A_FLOAT(argv,3) &&
 		IS_A_FLOAT(argv,4) &&
@@ -1123,13 +1140,13 @@ static void *bin_ambi_reduced_decode_new(t_symbol *s, int argc, t_atom *argv)
 	{
 		prefix	= (int)atom_getintarg(0, argc, argv);
 
-		s_hrir								= gensym("L_HRIR");
-		s_hrtf_re							= gensym("HRTF_re");
-		s_hrtf_im							= gensym("HRTF_im");
-		s_fade_out_hrir	      = gensym("HRIR_win");
+		s_hrir = gensym("L_HRIR");
+		s_hrtf_re = gensym("HRTF_re");
+		s_hrtf_im = gensym("HRTF_im");
+		s_fade_out_hrir	= gensym("HRIR_win");
 
 		n_order	= (int)atom_getintarg(5, argc, argv);
-		n_dim		= (int)atom_getintarg(6, argc, argv);
+		n_dim	= (int)atom_getintarg(6, argc, argv);
 		fftsize	= (int)atom_getintarg(7, argc, argv);
 
 		ok = 1;
@@ -1168,20 +1185,20 @@ static void *bin_ambi_reduced_decode_new(t_symbol *s, int argc, t_atom *argv)
 
 		if(!fftok)
 		{
-      fftsize = 512;
+			fftsize = 512;
 			post("bin_ambi_reduced_decode-WARNING: fftsize not equal to 2 ^ n !!!");
 			post("                                 fftsize set to %d", fftsize);
 		}
 
-		x->x_n_dim			= n_dim;
-		x->x_n_ambi			= n_ambi;
-		x->x_n_order		= n_order;
-		x->x_fftsize		= fftsize;
+		x->x_n_dim = n_dim;
+		x->x_n_ambi = n_ambi;
+		x->x_n_order = n_order;
+		x->x_fftsize = fftsize;
 
-		x->x_hrir_filename	= (t_symbol **)getbytes(x->x_n_ambi * sizeof(t_symbol *));
-		x->x_s_hrir					= (t_symbol **)getbytes(x->x_n_ambi * sizeof(t_symbol *));
-		x->x_s_hrtf_re			= (t_symbol **)getbytes(x->x_n_ambi * sizeof(t_symbol *));
-		x->x_s_hrtf_im			= (t_symbol **)getbytes(x->x_n_ambi * sizeof(t_symbol *));
+		x->x_hrir_filename = (t_symbol **)getbytes(x->x_n_ambi * sizeof(t_symbol *));
+		x->x_s_hrir = (t_symbol **)getbytes(x->x_n_ambi * sizeof(t_symbol *));
+		x->x_s_hrtf_re = (t_symbol **)getbytes(x->x_n_ambi * sizeof(t_symbol *));
+		x->x_s_hrtf_im = (t_symbol **)getbytes(x->x_n_ambi * sizeof(t_symbol *));
 		
 		for(i=0; i<n_ambi; i++)
 		{
diff --git a/externals/iem/iem_bin_ambi/src/bin_ambi_reduced_decode2.c b/externals/iem/iem_bin_ambi/src/bin_ambi_reduced_decode2.c
index cfb50eb2e..f5e1e89b5 100644
--- a/externals/iem/iem_bin_ambi/src/bin_ambi_reduced_decode2.c
+++ b/externals/iem/iem_bin_ambi/src/bin_ambi_reduced_decode2.c
@@ -1142,7 +1142,25 @@ static void *bin_ambi_reduced_decode2_new(t_symbol *s, int argc, t_atom *argv)
 	t_symbol	*s_hrir=gensym("L_HRIR");
 	t_symbol	*s_hrtf_re=gensym("HRTF_re");
 	t_symbol	*s_hrtf_im=gensym("HRTF_im");
-  t_symbol  *s_fade_out_hrir=gensym("HRIR_win");
+	t_symbol  *s_fade_out_hrir=gensym("HRIR_win");
+	t_atom sane_defaults[9];
+
+        if(!argc)
+        {
+                post("bin_ambi_reduced_decode2: warning: no arguments "
+                     "provided: setting to [bin_ambi_reduced_decode2 1 2 1]");
+                SETFLOAT(sane_defaults, 0.);
+                SETSYMBOL(sane_defaults+1, s_hrir);
+                SETSYMBOL(sane_defaults+2, s_hrtf_re);
+                SETSYMBOL(sane_defaults+3, s_hrtf_im);
+                SETSYMBOL(sane_defaults+4, s_fade_out_hrir);
+                SETFLOAT(sane_defaults+5, 1.);
+                SETFLOAT(sane_defaults+6, 2.);
+                SETFLOAT(sane_defaults+7, 1.);
+                SETFLOAT(sane_defaults+8, 512.);
+                argc = 9;
+                argv = sane_defaults;
+        }
 
 	if((argc >= 9) &&
 		IS_A_FLOAT(argv,0) &&
diff --git a/externals/iem/iem_bin_ambi/src/bin_ambi_reduced_decode_fft.c b/externals/iem/iem_bin_ambi/src/bin_ambi_reduced_decode_fft.c
index 04b4e0c5e..dfb094736 100644
--- a/externals/iem/iem_bin_ambi/src/bin_ambi_reduced_decode_fft.c
+++ b/externals/iem/iem_bin_ambi/src/bin_ambi_reduced_decode_fft.c
@@ -1273,11 +1273,33 @@ static void *bin_ambi_reduced_decode_fft_new(t_symbol *s, int argc, t_atom *argv
 	t_symbol	*s_hrir=gensym("L_HRIR");
 	t_symbol	*s_hrtf_re=gensym("HRTF_re");
 	t_symbol	*s_hrtf_im=gensym("HRTF_im");
-  t_symbol  *s_fade_out_hrir=gensym("HRIR_win");
+	t_symbol  *s_fade_out_hrir=gensym("HRIR_win");
+	t_atom sane_defaults[11];
+
+        if(!argc)
+        {
+                post("bin_ambi_reduced_decode_fft: warning: no arguments "
+                     "provided: setting to "
+                     "[bin_ambi_reduced_decode_fft 1 L_HRIR HRTF_re HRTF_im "
+                     "HRIR_win 1 2 1 1 0 512]");
+                SETFLOAT(sane_defaults, 0.);
+                SETSYMBOL(sane_defaults+1, s_hrir);
+                SETSYMBOL(sane_defaults+2, s_hrtf_re);
+                SETSYMBOL(sane_defaults+3, s_hrtf_im);
+                SETSYMBOL(sane_defaults+4, s_fade_out_hrir);
+                SETFLOAT(sane_defaults+5, 1.);
+                SETFLOAT(sane_defaults+6, 2.);
+                SETFLOAT(sane_defaults+7, 1.);
+                SETFLOAT(sane_defaults+8, 1.);
+                SETFLOAT(sane_defaults+9, 0.);
+                SETFLOAT(sane_defaults+10, 512.);
+                argc = 11;
+                argv = sane_defaults;
+        }
 
 	if((argc >= 11) &&
 		IS_A_FLOAT(argv,0) &&
-    IS_A_SYMBOL(argv,1) &&
+		IS_A_SYMBOL(argv,1) &&
 		IS_A_SYMBOL(argv,2) &&
 		IS_A_SYMBOL(argv,3) &&
 		IS_A_SYMBOL(argv,4) &&
@@ -1290,13 +1312,13 @@ static void *bin_ambi_reduced_decode_fft_new(t_symbol *s, int argc, t_atom *argv
 	{
 		prefix	= (int)atom_getintarg(0, argc, argv);
 
-		s_hrir								= (t_symbol *)atom_getsymbolarg(1, argc, argv);
-		s_hrtf_re							= (t_symbol *)atom_getsymbolarg(2, argc, argv);
-		s_hrtf_im							= (t_symbol *)atom_getsymbolarg(3, argc, argv);
-		s_fade_out_hrir	      = (t_symbol *)atom_getsymbolarg(4, argc, argv);
+		s_hrir	= (t_symbol *)atom_getsymbolarg(1, argc, argv);
+		s_hrtf_re = (t_symbol *)atom_getsymbolarg(2, argc, argv);
+		s_hrtf_im = (t_symbol *)atom_getsymbolarg(3, argc, argv);
+		s_fade_out_hrir = (t_symbol *)atom_getsymbolarg(4, argc, argv);
 
 		n_order		= (int)atom_getintarg(5, argc, argv);
-		n_dim			= (int)atom_getintarg(6, argc, argv);
+		n_dim		= (int)atom_getintarg(6, argc, argv);
 		n_ind_ls	= (int)atom_getintarg(7, argc, argv);
 		n_mrg_mir_ls	= (int)atom_getintarg(8, argc, argv);
 		n_ph_ls		= (int)atom_getintarg(9, argc, argv);
@@ -1306,7 +1328,7 @@ static void *bin_ambi_reduced_decode_fft_new(t_symbol *s, int argc, t_atom *argv
 	}
 	else if((argc >= 11) &&
 		IS_A_FLOAT(argv,0) &&
-    IS_A_FLOAT(argv,1) &&
+		IS_A_FLOAT(argv,1) &&
 		IS_A_FLOAT(argv,2) &&
 		IS_A_FLOAT(argv,3) &&
 		IS_A_FLOAT(argv,4) &&
@@ -1319,9 +1341,9 @@ static void *bin_ambi_reduced_decode_fft_new(t_symbol *s, int argc, t_atom *argv
 	{
 		prefix	= (int)atom_getintarg(0, argc, argv);
 
-		s_hrir								= gensym("L_HRIR");
-		s_hrtf_re							= gensym("HRTF_re");
-		s_hrtf_im							= gensym("HRTF_im");
+		s_hrir	= gensym("L_HRIR");
+		s_hrtf_re = gensym("HRTF_re");
+		s_hrtf_im = gensym("HRTF_im");
 		s_fade_out_hrir	      = gensym("HRIR_win");
 
 		n_order	= (int)atom_getintarg(5, argc, argv);
diff --git a/externals/iem/iem_bin_ambi/src/bin_ambi_reduced_decode_fft2.c b/externals/iem/iem_bin_ambi/src/bin_ambi_reduced_decode_fft2.c
index 9d0e11db8..9f72be8e3 100644
--- a/externals/iem/iem_bin_ambi/src/bin_ambi_reduced_decode_fft2.c
+++ b/externals/iem/iem_bin_ambi/src/bin_ambi_reduced_decode_fft2.c
@@ -1161,7 +1161,28 @@ static void *bin_ambi_reduced_decode_fft2_new(t_symbol *s, int argc, t_atom *arg
   t_symbol  *s_hrtf_re=gensym("HRTF_re");
   t_symbol  *s_hrtf_im=gensym("HRTF_im");
   t_symbol  *s_fade_out_hrir=gensym("HRIR_win");
+  t_atom sane_defaults[10];
   
+  if(!argc)
+  {
+    post("bin_ambi_reduced_decode_fft2: warning: no arguments "
+         "provided: setting to "
+         "[bin_ambi_reduced_decode_fft2 1 L_HRIR HRTF_re HRTF_im "
+         "HRIR_win 1 2 1 0 512]");
+    SETFLOAT(sane_defaults, 0.);
+    SETSYMBOL(sane_defaults+1, s_hrir);
+    SETSYMBOL(sane_defaults+2, s_hrtf_re);
+    SETSYMBOL(sane_defaults+3, s_hrtf_im);
+    SETSYMBOL(sane_defaults+4, s_fade_out_hrir);
+    SETFLOAT(sane_defaults+5, 1.);
+    SETFLOAT(sane_defaults+6, 2.);
+    SETFLOAT(sane_defaults+7, 1.);
+    SETFLOAT(sane_defaults+8, 0.);
+    SETFLOAT(sane_defaults+9, 512.);
+    argc = 10;
+    argv = sane_defaults;
+  }
+
   if((argc >= 10) &&
     IS_A_FLOAT(argv,0) &&
     IS_A_SYMBOL(argv,1) &&
diff --git a/externals/iem/iem_bin_ambi/src/bin_ambi_reduced_decode_fir.c b/externals/iem/iem_bin_ambi/src/bin_ambi_reduced_decode_fir.c
index 19783da07..fe95b120e 100644
--- a/externals/iem/iem_bin_ambi/src/bin_ambi_reduced_decode_fir.c
+++ b/externals/iem/iem_bin_ambi/src/bin_ambi_reduced_decode_fir.c
@@ -1174,11 +1174,32 @@ static void *bin_ambi_reduced_decode_fir_new(t_symbol *s, int argc, t_atom *argv
 	int n_order=0, n_dim=0, n_ind_ls=0, n_mrg_mir_ls=0, n_ph_ls=0, n_ambi=0, firsize=0, prefix=0;
 	t_symbol	*s_hrir=gensym("L_HRIR");
 	t_symbol	*s_hrir_red=gensym("HRIR_red");
-  t_symbol  *s_fade_out_hrir=gensym("HRIR_win");
+	t_symbol  *s_fade_out_hrir=gensym("HRIR_win");
+	t_atom sane_defaults[10];
+
+        if(!argc)
+        {
+                post("bin_ambi_reduced_decode_fir: warning: no arguments "
+                     "provided: setting to "
+                     "[bin_ambi_reduced_decode_fir 1 L_HRIR HRTF_red "
+                     "HRIR_win 1 2 1 1 0 512]");
+                SETFLOAT(sane_defaults, 0.);
+                SETSYMBOL(sane_defaults+1, s_hrir);
+                SETSYMBOL(sane_defaults+2, s_hrir_red);
+                SETSYMBOL(sane_defaults+3, s_fade_out_hrir);
+                SETFLOAT(sane_defaults+4, 1.);
+                SETFLOAT(sane_defaults+5, 2.);
+                SETFLOAT(sane_defaults+6, 1.);
+                SETFLOAT(sane_defaults+7, 1.);
+                SETFLOAT(sane_defaults+8, 0.);
+                SETFLOAT(sane_defaults+9, 512.);
+                argc = 10;
+                argv = sane_defaults;
+        }
 
 	if((argc >= 10) &&
 		IS_A_FLOAT(argv,0) &&
-    IS_A_SYMBOL(argv,1) &&
+		IS_A_SYMBOL(argv,1) &&
 		IS_A_SYMBOL(argv,2) &&
 		IS_A_SYMBOL(argv,3) &&
 		IS_A_FLOAT(argv,4) &&
@@ -1190,12 +1211,12 @@ static void *bin_ambi_reduced_decode_fir_new(t_symbol *s, int argc, t_atom *argv
 	{
 		prefix	= (int)atom_getintarg(0, argc, argv);
 
-		s_hrir								= (t_symbol *)atom_getsymbolarg(1, argc, argv);
-		s_hrir_red						= (t_symbol *)atom_getsymbolarg(2, argc, argv);
-		s_fade_out_hrir	      = (t_symbol *)atom_getsymbolarg(3, argc, argv);
+		s_hrir = (t_symbol *)atom_getsymbolarg(1, argc, argv);
+		s_hrir_red = (t_symbol *)atom_getsymbolarg(2, argc, argv);
+		s_fade_out_hrir = (t_symbol *)atom_getsymbolarg(3, argc, argv);
 
 		n_order		= (int)atom_getintarg(4, argc, argv);
-		n_dim			= (int)atom_getintarg(5, argc, argv);
+		n_dim		= (int)atom_getintarg(5, argc, argv);
 		n_ind_ls	= (int)atom_getintarg(6, argc, argv);
 		n_mrg_mir_ls	= (int)atom_getintarg(7, argc, argv);
 		n_ph_ls		= (int)atom_getintarg(8, argc, argv);
diff --git a/externals/iem/iem_bin_ambi/src/bin_ambi_reduced_decode_fir2.c b/externals/iem/iem_bin_ambi/src/bin_ambi_reduced_decode_fir2.c
index b491a31df..88295c726 100644
--- a/externals/iem/iem_bin_ambi/src/bin_ambi_reduced_decode_fir2.c
+++ b/externals/iem/iem_bin_ambi/src/bin_ambi_reduced_decode_fir2.c
@@ -1057,11 +1057,31 @@ static void *bin_ambi_reduced_decode_fir2_new(t_symbol *s, int argc, t_atom *arg
 	int n_order=0, n_dim=0, n_real_ls=0, n_pht_ls=0, n_ambi=0, firsize=0, prefix=0;
 	t_symbol	*s_hrir=gensym("L_HRIR");
 	t_symbol	*s_hrir_red=gensym("HRIR_red");
-  t_symbol  *s_fade_out_hrir=gensym("HRIR_win");
+	t_symbol  *s_fade_out_hrir=gensym("HRIR_win");
+	t_atom sane_defaults[9];
+
+        if(!argc)
+        {
+                post("bin_ambi_reduced_decode_fir2: warning: no arguments "
+                     "provided: setting to "
+                     "[bin_ambi_reduced_decode_fir2 1 L_HRIR HRIR_red "
+                     "HRIR_win 1 2 1 0 32]");
+                SETFLOAT(sane_defaults, 0.);
+                SETSYMBOL(sane_defaults+1, s_hrir);
+                SETSYMBOL(sane_defaults+2, s_hrir_red);
+                SETSYMBOL(sane_defaults+3, s_fade_out_hrir);
+                SETFLOAT(sane_defaults+4, 1.);
+                SETFLOAT(sane_defaults+5, 2.);
+                SETFLOAT(sane_defaults+6, 1.);
+                SETFLOAT(sane_defaults+7, 0.);
+                SETFLOAT(sane_defaults+8, 32.);
+                argc = 9;
+                argv = sane_defaults;
+        }
 
 	if((argc >= 9) &&
 		IS_A_FLOAT(argv,0) &&
-    IS_A_SYMBOL(argv,1) &&
+		IS_A_SYMBOL(argv,1) &&
 		IS_A_SYMBOL(argv,2) &&
 		IS_A_SYMBOL(argv,3) &&
 		IS_A_FLOAT(argv,4) &&
-- 
GitLab


From 3964dea2046433dd6a15d3f016708311ede48e46 Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Thu, 27 Jul 2017 22:07:55 -0400
Subject: [PATCH 20/98] remove "matrix~" from iemmatrix to prevent nameclash
 with cyclone/matrix~

---
 externals/iem/iemmatrix/alias/matrix~.c | 5 -----
 externals/iem/iemmatrix/src/mtx_mul~.c  | 2 +-
 2 files changed, 1 insertion(+), 6 deletions(-)
 delete mode 100644 externals/iem/iemmatrix/alias/matrix~.c

diff --git a/externals/iem/iemmatrix/alias/matrix~.c b/externals/iem/iemmatrix/alias/matrix~.c
deleted file mode 100644
index b50d1d933..000000000
--- a/externals/iem/iemmatrix/alias/matrix~.c
+++ /dev/null
@@ -1,5 +0,0 @@
-#include "../src/mtx_mul~.c"
-void matrix_tilde_setup()
-{
-  mtx_mul_tilde_setup();
-}
diff --git a/externals/iem/iemmatrix/src/mtx_mul~.c b/externals/iem/iemmatrix/src/mtx_mul~.c
index 3f072f35b..64f31edc1 100644
--- a/externals/iem/iemmatrix/src/mtx_mul~.c
+++ b/externals/iem/iemmatrix/src/mtx_mul~.c
@@ -925,7 +925,7 @@ void mtx_mul_tilde_setup(void)
   /* compatibility with tm's iem_matrix */
   class_addcreator((t_newmethod)matrix_multilde_new, gensym("matrix_mul_line~"), A_GIMME, 0);
   /* compatibility with jmz's zexy */
-  class_addcreator((t_newmethod)matrix_multilde_new, gensym("matrix~"), A_GIMME, 0);
+  //class_addcreator((t_newmethod)matrix_multilde_new, gensym("matrix~"), A_GIMME, 0);
 
 
   class_addmethod(matrix_multilde_class, (t_method)matrix_multilde_dsp, gensym("dsp"), 0);
-- 
GitLab


From 7cfac026e0f00449272f3fee232c560ac244dc35 Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Thu, 27 Jul 2017 22:08:51 -0400
Subject: [PATCH 21/98] allow class_addcreator to register an additional
 creator with the namespace prefix if one was used

This will allow legacy externals like iemmatrix and zexy to properly load
aliases the first time when the user instantiates an object with
[namespace_prefix/alias_name]

This becomes relevant when there are kludge classes that essentially just
"#include" the original C file of a class and add an alias_setup function
which just calls the original setup routine. (For example, see iemmatrix.)
However, such an approach still calls class_new with the original class name.
Thus "namespace_prefix/classname" gets added to the pd_objectcreator
methodspace, but "namespace_prefix/alias_name"-- which is what we want--
does not. This results in a series of 1000 recursive calls into
pd_objectmaker's new_anything method. (I.e., sys_load_lib finds the
"namespace_prefix/classname" is already loaded, new_anything_sends a
typedmess to pd_objectmaker's new_anything method, which calls
sys_load_lib, etc.)

To prevent this, we just make sure to add "namespace_prefix/alias" by
adding the relevant lines to class_addcreator. This should really be
happening anyway-- since internal classes don't have a class_loadsym
they aren't affected, and externals with aliases won't work with
namespace prefix without this.
---
 pd/src/m_class.c | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/pd/src/m_class.c b/pd/src/m_class.c
index f5926e98e..54cfa965d 100644
--- a/pd/src/m_class.c
+++ b/pd/src/m_class.c
@@ -318,6 +318,18 @@ void class_addcreator(t_newmethod newmethod, t_symbol *s,
     va_end(ap);
     class_addmethod(pd_objectmaker, (t_method)newmethod, s,
         vec[0], vec[1], vec[2], vec[3], vec[4], vec[5]);
+    if (class_loadsym)
+    {
+            /* if we're loading an extern it might have been invoked by a
+            longer file name; in this case, make this an admissible name
+            too. */
+        char *loadstring = class_loadsym->s_name,
+            l1 = strlen(s->s_name), l2 = strlen(loadstring);
+        if (l2 > l1 && !strcmp(s->s_name, loadstring + (l2 - l1)))
+            class_addmethod(pd_objectmaker, (t_method)newmethod,
+                class_loadsym,
+                vec[0], vec[1], vec[2], vec[3], vec[4], vec[5]);
+    }
 }
 
 void class_addmethod(t_class *c, t_method fn, t_symbol *sel,
-- 
GitLab


From 0fdcd2a4f0ba57d2458b1c9ce117ce1e1d425e32 Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Fri, 28 Jul 2017 12:30:03 -0400
Subject: [PATCH 22/98] remove copies of mapping library abstractions from
 la-kitchen

I don't see any use of the namespace prefix in the repo (like
la-kitchen/amplitude_n). So while this has the potential to break
some patches in the wild, it appears most people have been using
either unprefixed names or the more popular mapping library prefix.

If this ends up breaking a bunch of stuff we can always revert it.
---
 abstractions/Makefile | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)

diff --git a/abstractions/Makefile b/abstractions/Makefile
index c1ad71c72..755633026 100644
--- a/abstractions/Makefile
+++ b/abstractions/Makefile
@@ -111,6 +111,23 @@ la-kitchen_install:
 #	install -d $(DESTDIR)$(manualsdir)/$(LA-KITCHEN_NAME)
 #	install -p $(abstractions_src)/La-kitchen/doc/*.* \
 #		 $(DESTDIR)$(manualsdir)/$(LA-KITCHEN_NAME)
+	# Remove abstractions that are already in mapping.
+	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN-NAME)/amplitude_n.pd
+	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN-NAME)/amplitude_n-help.pd
+	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN-NAME)/debounce.pd
+	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN-NAME)/debounce-help.pd
+	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN-NAME)/last_n.pd
+	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN-NAME)/last_n-help.pd
+	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN-NAME)/max_n.pd
+	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN-NAME)/max_n-help.pd
+	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN-NAME)/median_3.pd
+	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN-NAME)/median_3-help.pd
+	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN-NAME)/median_5.pd
+	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN-NAME)/median_5-help.pd
+	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN-NAME)/median_7.pd
+	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN-NAME)/median_7-help.pd
+	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN-NAME)/min_n.pd
+	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN-NAME)/min_n-help.pd
 	install -p $(abstractions_src)/La-kitchen/readme.txt \
 		$(DESTDIR)$(objectsdir)/$(LA_KITCHEN_NAME)/README.txt
 
-- 
GitLab


From b02fcebac0b8c8cc411edd587747b60940547456 Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Fri, 28 Jul 2017 15:21:37 -0400
Subject: [PATCH 23/98] make mrpeach objects instantiate without arguments

---
 externals/mrpeach/net/udpreceive~.c | 10 ++++++++++
 externals/mrpeach/net/udpsend~.c    |  5 +++++
 2 files changed, 15 insertions(+)

diff --git a/externals/mrpeach/net/udpreceive~.c b/externals/mrpeach/net/udpreceive~.c
index 86a7f082b..9768baa54 100644
--- a/externals/mrpeach/net/udpreceive~.c
+++ b/externals/mrpeach/net/udpreceive~.c
@@ -670,7 +670,17 @@ static void *udpreceive_tilde_new(t_symbol *s, int argc, t_atom *argv)
 {
     t_udpreceive_tilde  *x;
     int                 i, j = 0, portno = 0, outlets = 0, blocksize = 0;
+    t_atom sane_defaults[2];
 
+    if (!argc)
+    {
+        post("udpreceive~: warning: no arguments provided: defaulting to "
+             "[updreceive~ 0]");
+        SETFLOAT(sane_defaults, 0.);
+        SETFLOAT(sane_defaults+1, 1.);
+        argc = 2;
+        argv = sane_defaults;
+    }
 
     x = (t_udpreceive_tilde *)pd_new(udpreceive_tilde_class);
     if (NULL == x) return NULL;
diff --git a/externals/mrpeach/net/udpsend~.c b/externals/mrpeach/net/udpsend~.c
index 5846524ab..77b514c0f 100644
--- a/externals/mrpeach/net/udpsend~.c
+++ b/externals/mrpeach/net/udpsend~.c
@@ -840,6 +840,11 @@ static void *udpsend_tilde_new(t_floatarg inlets, t_floatarg blocksize)
     t_udpsend_tilde *x = (t_udpsend_tilde *)pd_new(udpsend_tilde_class);
     if (x)
     {
+        if (inlets < 1.)
+        {
+            post("udpsend~: warning: no inlet argument given: defaulting to 1");
+            inlets = 1.;
+        }
         for (i = sizeof(t_object); i < (int)sizeof(t_udpsend_tilde); i++)
             ((char *)x)[i] = 0; 
 
-- 
GitLab


From fc0822a0c0767fd25e80d1b8840b66bcddbf8fec Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Fri, 28 Jul 2017 15:24:10 -0400
Subject: [PATCH 24/98] allow iem_spec2 objects to instantiate without
 arguments

---
 externals/iem/iem_spec2/src/spec2_tab_conv~.c | 11 ++++++++++-
 1 file changed, 10 insertions(+), 1 deletion(-)

diff --git a/externals/iem/iem_spec2/src/spec2_tab_conv~.c b/externals/iem/iem_spec2/src/spec2_tab_conv~.c
index d9ac5cdf5..980592097 100644
--- a/externals/iem/iem_spec2/src/spec2_tab_conv~.c
+++ b/externals/iem/iem_spec2/src/spec2_tab_conv~.c
@@ -118,7 +118,16 @@ static void spec2_tab_conv_tilde_free(t_spec2_tab_conv_tilde *x)
 static void *spec2_tab_conv_tilde_new(t_symbol *s, int argc, t_atom *argv)
 {
   t_spec2_tab_conv_tilde *x = (t_spec2_tab_conv_tilde *)pd_new(spec2_tab_conv_tilde_class);
-  
+  t_atom sane_defaults[2];
+  if(!argc)
+  {
+    post("spec2_tab_conv~: warning: no arguments provided: setting defaults to "
+         "[spec2_tab_conv~ array1 0]");
+    SETSYMBOL(sane_defaults, gensym("array1"));
+    SETFLOAT(sane_defaults+1, 0.);
+    argv = sane_defaults;
+    argc = 2;
+  }
   if((argc >= 2) && IS_A_SYMBOL(argv,0) && IS_A_FLOAT(argv,1))
   {
     x->x_sym_array = (t_symbol *)(atom_getsymbol(argv));
-- 
GitLab


From 86dae3417619d56c91df1f4f6f9f5875ac3bcb11 Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Fri, 28 Jul 2017 16:52:51 -0400
Subject: [PATCH 25/98] remove nameclashing classes from non-default loaded
 abstraction libraries

---
 abstractions/Makefile | 37 +++++++++++++++++++++++++++++++++++++
 1 file changed, 37 insertions(+)

diff --git a/abstractions/Makefile b/abstractions/Makefile
index 755633026..5c1014fad 100644
--- a/abstractions/Makefile
+++ b/abstractions/Makefile
@@ -277,6 +277,33 @@ purepd:
 
 purepd_install:
 	make -C $(abstractions_src)/purepd DESTDIR="$(DESTDIR)" objectsdir="$(objectsdir)" install
+	# remove abstractions that clash with default loaded libraries
+	rm $(DESTDIR)$(objectsdir)/purepd/alternate.pd
+	rm $(DESTDIR)$(objectsdir)/purepd/alternate-help.pd
+	rm $(DESTDIR)$(objectsdir)/purepd/cosh.pd
+	rm $(DESTDIR)$(objectsdir)/purepd/cosh-help.pd
+	rm $(DESTDIR)$(objectsdir)/purepd/delta~.pd
+	rm $(DESTDIR)$(objectsdir)/purepd/delta~-help.pd
+	rm $(DESTDIR)$(objectsdir)/purepd/delta.pd
+	rm $(DESTDIR)$(objectsdir)/purepd/delta-help.pd
+	rm $(DESTDIR)$(objectsdir)/purepd/fifo.pd
+	rm $(DESTDIR)$(objectsdir)/purepd/fifo-help.pd
+	rm $(DESTDIR)$(objectsdir)/purepd/for++.pd
+	rm $(DESTDIR)$(objectsdir)/purepd/for++-help.pd
+	rm $(DESTDIR)$(objectsdir)/purepd/inv.pd
+	rm $(DESTDIR)$(objectsdir)/purepd/inv-help.pd
+	rm $(DESTDIR)$(objectsdir)/purepd/once.pd
+	rm $(DESTDIR)$(objectsdir)/purepd/once-help.pd
+	rm $(DESTDIR)$(objectsdir)/purepd/oneshot.pd
+	rm $(DESTDIR)$(objectsdir)/purepd/oneshot-help.pd
+	rm $(DESTDIR)$(objectsdir)/purepd/sgn~.pd
+	rm $(DESTDIR)$(objectsdir)/purepd/sgn~-help.pd
+	rm $(DESTDIR)$(objectsdir)/purepd/sinh.pd
+	rm $(DESTDIR)$(objectsdir)/purepd/sinh-help.pd
+	rm $(DESTDIR)$(objectsdir)/purepd/tanh.pd
+	rm $(DESTDIR)$(objectsdir)/purepd/tanh-help.pd
+	rm $(DESTDIR)$(objectsdir)/purepd/velocity.pd
+	rm $(DESTDIR)$(objectsdir)/purepd/velocity-help.pd
 
 purepd_clean:
 	make -C $(abstractions_src)/purepd clean
@@ -334,6 +361,13 @@ rtc-lib_install:
 	install -d $(DESTDIR)$(objectsdir)/$(RTC-LIB_NAME)/examples
 	install -p $(abstractions_src)/footils/rtc-lib/rtc/rtc-help/*.pd \
 		$(DESTDIR)$(objectsdir)/$(RTC-LIB_NAME)/examples
+	# remove abstractions that clash with the names of default loaded
+	# libraries
+	rm $(DESTDIR)$(objectsdir)/$(RTC-LIB_NAME)/expr_scale.pd
+	rm $(DESTDIR)$(objectsdir)/$(RTC-LIB_NAME)/inv.pd
+	rm $(DESTDIR)$(objectsdir)/$(RTC-LIB_NAME)/minus.pd
+	rm $(DESTDIR)$(objectsdir)/$(RTC-LIB_NAME)/ratio.pd
+	rm $(DESTDIR)$(objectsdir)/$(RTC-LIB_NAME)/ratio-help.pd
 
 #-------------------------------------------------------------------------------
 # sfruit
@@ -346,6 +380,9 @@ sfruit_install:
 		--author "Luke Iannini" \
 		--license "GNU GPL" \
 		--description "a large collection of assorted handy utilites"
+	# remove abstraction that has a nameclash with list-abs
+	rm $(DESTDIR)$(objectsdir)/$(SFRUIT_NAME)/list-swap.pd
+	rm $(DESTDIR)$(objectsdir)/$(SFRUIT_NAME)/list-swap-help.pd
 
 #-------------------------------------------------------------------------------
 # TIMESTRETCH
-- 
GitLab


From f442a71d625eb8f25b3e9502987a1d87f375c085 Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Fri, 28 Jul 2017 22:42:04 -0400
Subject: [PATCH 26/98] port tof/imagebang and allow it to instantiate with no
 arguments

---
 externals/tof/src/imagebang.c | 474 ++++++++++++++++++++++------------
 pd/nw/pdgui.js                |   7 +-
 2 files changed, 310 insertions(+), 171 deletions(-)

diff --git a/externals/tof/src/imagebang.c b/externals/tof/src/imagebang.c
index 12847602e..31fb1fc34 100644
--- a/externals/tof/src/imagebang.c
+++ b/externals/tof/src/imagebang.c
@@ -31,97 +31,156 @@ typedef struct _imagebang
      t_symbol* send;
      t_clock* clock_flash;
      t_clock* clock_brk;
-     int 		flashing;
-	 t_outlet* outlet;
+     int         flashing;
+     t_outlet* outlet;
 } t_imagebang;
 
 static void imagebang_bang(t_imagebang *x)
 {
-	
-	t_glist* glist = glist_getcanvas(x->glist);
-    if(x->flashing) {
-		sys_vgui(".x%x.c itemconfigure %ximage -image %x_imagebang \n", glist, x,x->image_a);
+    t_glist* glist = glist_getcanvas(x->glist);
+    char image_key[MAXPDSTRING];
+    if (x->flashing)
+    {
+        sys_vgui(".x%x.c itemconfigure %ximage -image %x_imagebang \n",
+            glist, x,x->image_a);
         clock_delay(x->clock_brk, 50);
         //x->flashed = 1;
-    } else  {
-		sys_vgui(".x%x.c itemconfigure %ximage -image %x_imagebang \n", glist, x,x->image_b);
+        // key_a:
+        sprintf(image_key, "%lx_a", (long unsigned int)x);
+        gui_vmess("gui_image_configure", "xxss",
+            glist_getcanvas(x->glist),
+            x,
+            image_key,
+            "nw");
+    }
+    else
+    {
+        sys_vgui(".x%x.c itemconfigure %ximage -image %x_imagebang \n",
+            glist, x,x->image_b);
+        // key_b:
+        sprintf(image_key, "%lx_b", (long unsigned int)x);
+        gui_vmess("gui_image_configure", "xxss",
+            glist_getcanvas(x->glist),
+            x,
+            image_key,
+            "nw");
         x->flashing = 1;
-        
     }
     clock_delay(x->clock_flash, 250);
-    
        
     outlet_bang(x->outlet);
     
-    if(x->send && x->send->s_thing ) pd_bang(x->send->s_thing);
-    
+    if (x->send && x->send->s_thing) pd_bang(x->send->s_thing);
 }
 
 static void imagebang_flash_timeout(t_imagebang *x)
 {
-	t_glist* glist = glist_getcanvas(x->glist);
+    t_glist* glist = glist_getcanvas(x->glist);
+    char key_a[MAXPDSTRING];
     x->flashing = 0;
-    sys_vgui(".x%x.c itemconfigure %ximage -image %x_imagebang \n", glist, x,x->image_a);
+    sprintf(key_a, "%lx_a", (long unsigned int)x);
+    gui_vmess("gui_image_configure", "xxss",
+        glist_getcanvas(x->glist),
+        x,
+        key_a,
+        "nw");
+    x->flashing = 1;
+    //sys_vgui(".x%x.c itemconfigure %ximage -image %x_imagebang \n",
+    //    glist, x,x->image_a);
     
 }
 
 static void imagebang_brk_timeout(t_imagebang *x)
 {
-	t_glist* glist = glist_getcanvas(x->glist);
+    t_glist* glist = glist_getcanvas(x->glist);
+    char key_b[MAXPDSTRING];
     x->flashing = 1;
-    sys_vgui(".x%x.c itemconfigure %ximage -image %x_imagebang \n", glist, x,x->image_b);
-    
+    //sys_vgui(".x%x.c itemconfigure %ximage -image %x_imagebang \n",
+    //    glist, x,x->image_b);
+    sprintf(key_b, "%lx_b", (long unsigned int)x);
+    gui_vmess("gui_image_configure", "xxss",
+        glist_getcanvas(x->glist),
+        x,
+        key_b,
+        "nw");
 }
 
 /* widget helper functions */
 
 static const char* imagebang_get_filename(t_imagebang *x,char *file) {
-	static char fname[MAXPDSTRING];
-	char *bufptr;
-	int fd;
-	
-	fd=open_via_path(canvas_getdir(glist_getcanvas(x->glist))->s_name, 
-	    file, "",fname, &bufptr, MAXPDSTRING, 1);
-	if(fd>0){
-	  	fname[strlen(fname)]='/';
-	  	DEBUG(post("image file: %s",fname);)
-	  	close(fd);
-	  	return fname;
-	} else {
-		return 0;
-	}
+    static char fname[MAXPDSTRING];
+    char *bufptr;
+    int fd;
+    
+    fd=open_via_path(canvas_getdir(glist_getcanvas(x->glist))->s_name, 
+        file, "",fname, &bufptr, MAXPDSTRING, 1);
+    if(fd>0){
+          fname[strlen(fname)]='/';
+          DEBUG(post("image file: %s",fname);)
+          close(fd);
+          return fname;
+    } else {
+        return 0;
+    }
 }
 
 static int imagebang_click(t_imagebang *x, struct _glist *glist,
     int xpos, int ypos, int shift, int alt, int dbl, int doit)
 {
-	//DEBUG(post("x:%i y:%i dbl:%i doit:%i",xpos,ypos,dbl,doit);)
-	if (doit) imagebang_bang(x);
-	return (1);
+    //DEBUG(post("x:%i y:%i dbl:%i doit:%i",xpos,ypos,dbl,doit);)
+    if (doit) imagebang_bang(x);
+    return (1);
 }
 
-static void imagebang_drawme(t_imagebang *x, t_glist *glist, int firsttime) {
-     if (firsttime) {			 
-		DEBUG(post("Rendering: \n   %x_imagebang:%s \n   %x_imagebang:%s",x->image_a,x->image_a->s_name,x->image_b,x->image_b->s_name);)
-
-		sys_vgui(".x%x.c create image %d %d -anchor nw -image %x_imagebang -disabledimage %x_imagebang -tags %ximage\n", 
-			glist_getcanvas(glist),
-			text_xpix(&x->x_obj, glist), text_ypix(&x->x_obj, glist),x->image_a,x->image_b,x);
-
-		sys_vgui("pd [concat %s _imagesize [image width %x_imagebang] [image height %x_imagebang] \\;]\n",x->receive->s_name,x->image_a,x->image_a);
-     } else {
-	  sys_vgui(".x%x.c coords %ximage %d %d\n",
-		   glist_getcanvas(glist), x,
-		   text_xpix(&x->x_obj, glist), text_ypix(&x->x_obj, glist));
-     }
+static void imagebang_drawme(t_imagebang *x, t_glist *glist, int firsttime)
+{
+    if (firsttime)
+    {
+        char key_a[MAXPDSTRING];
+        char key_b[MAXPDSTRING];
+        //DEBUG(post("Rendering: \n   %x_imagebang:%s \n   %x_imagebang:%s",x->image_a,x->image_a->s_name,x->image_b,x->image_b->s_name);)
+
+        //sys_vgui(".x%x.c create image %d %d -anchor nw -image %x_imagebang -disabledimage %x_imagebang -tags %ximage\n", 
+        //    glist_getcanvas(glist),
+        //    text_xpix(&x->x_obj, glist), text_ypix(&x->x_obj, glist),x->image_a,x->image_b,x);
+
+        //sys_vgui("pd [concat %s _imagesize [image width %x_imagebang] [image height %x_imagebang] \\;]\n",x->receive->s_name,x->image_a,x->image_a);
+
+        gui_vmess("gui_gobj_new", "xxsiii",
+            glist_getcanvas(glist),
+            x,
+            "obj",
+            text_xpix(&x->x_obj, glist),
+            text_ypix(&x->x_obj, glist),
+            glist_istoplevel(glist));
+        sprintf(key_a, "%lx_a", (long unsigned int)x);
+        gui_vmess("gui_gobj_draw_image", "xxss",
+            glist_getcanvas(glist),
+            x,
+            key_a,
+            "nw");
+        gui_vmess("gui_image_size_callback", "xss",
+            glist_getcanvas(glist), key_a, x->receive->s_name);
+    }
+    else
+    {
+        //sys_vgui(".x%x.c coords %ximage %d %d\n",
+        //    glist_getcanvas(glist), x,
+        //    text_xpix(&x->x_obj, glist), text_ypix(&x->x_obj, glist));
+        gui_vmess("gui_image_coords", "xxii",
+            glist_getcanvas(glist),
+            x,
+            text_xpix(&x->x_obj, glist),
+            text_ypix(&x->x_obj, glist));
+    }
 }
 
 void imagebang_erase(t_imagebang* x,t_glist* glist)
 {
-     int n;
-     sys_vgui(".x%x.c delete %ximage\n",
-	      glist_getcanvas(glist), x);
-
+    int n;
+    sys_vgui(".x%x.c delete %ximage\n",
+        glist_getcanvas(glist), x);
+    gui_vmess("gui_gobj_erase", "xx", glist_getcanvas(glist), x);
 }
 
 
@@ -140,7 +199,7 @@ static void imagebang_getrect(t_gobj *z, t_glist *glist,
     *yp1 = text_ypix(&x->x_obj, glist);
     *xp2 = text_xpix(&x->x_obj, glist) + width;
     *yp2 = text_ypix(&x->x_obj, glist) + height;
-	//fprintf(stderr,"%d %d %d %d\n", *xp1, *yp1, *xp2, *yp2);
+    //fprintf(stderr,"%d %d %d %d\n", *xp1, *yp1, *xp2, *yp2);
 }
 
 static void imagebang_displace(t_gobj *z, t_glist *glist,
@@ -149,31 +208,49 @@ static void imagebang_displace(t_gobj *z, t_glist *glist,
     t_imagebang *x = (t_imagebang *)z;
     x->x_obj.te_xpix += dx;
     x->x_obj.te_ypix += dy;
-    sys_vgui(".x%x.c coords %xSEL %d %d %d %d\n",
-		   glist_getcanvas(glist), x,
-		   text_xpix(&x->x_obj, glist), text_ypix(&x->x_obj, glist),
-		   text_xpix(&x->x_obj, glist) + x->width, text_ypix(&x->x_obj, glist) + x->height);
+    //sys_vgui(".x%x.c coords %xSEL %d %d %d %d\n",
+    //       glist_getcanvas(glist), x,
+    //       text_xpix(&x->x_obj, glist), text_ypix(&x->x_obj, glist),
+    //       text_xpix(&x->x_obj, glist) + x->width, text_ypix(&x->x_obj, glist) + x->height);
 
     imagebang_drawme(x, glist, 0);
     canvas_fixlinesfor(glist,(t_text*) x);
 }
 
+static void imagebang_displace_wtag(t_gobj *z, t_glist *glist,
+    int dx, int dy)
+{
+    //fprintf(stderr,"image displace_wtag\n");
+    t_imagebang *x = (t_imagebang *)z;
+    x->x_obj.te_xpix += dx;
+    x->x_obj.te_ypix += dy;
+    /*sys_vgui(".x%x.c coords %xSEL %d %d %d %d\n",
+           glist_getcanvas(glist), x,
+           text_xpix(&x->x_obj, glist), text_ypix(&x->x_obj, glist),
+           text_xpix(&x->x_obj, glist) + x->x_width, text_ypix(&x->x_obj, glist) + x->x_height);
+
+    imagebang_drawme(x, glist, 0);*/
+    canvas_fixlinesfor(glist,(t_text*) x);
+}
+
 static void imagebang_select(t_gobj *z, t_glist *glist, int state)
 {
-     t_imagebang *x = (t_imagebang *)z;
-     if (state) {
-	  sys_vgui(".x%x.c create rectangle \
-			%d %d %d %d -tags %xSEL -outline $select_color\n",
-			glist_getcanvas(glist),
-			text_xpix(&x->x_obj, glist), text_ypix(&x->x_obj, glist),
-			text_xpix(&x->x_obj, glist) + x->width,
-			text_ypix(&x->x_obj, glist) + x->height,
-			x);
-     }
-     else {
-	  sys_vgui(".x%x.c delete %xSEL\n",
-		   glist_getcanvas(glist), x);
-     }
+    t_imagebang *x = (t_imagebang *)z;
+    if (state) {
+     sys_vgui(".x%x.c create rectangle \
+           %d %d %d %d -tags %xSEL -outline $select_color\n",
+           glist_getcanvas(glist),
+           text_xpix(&x->x_obj, glist), text_ypix(&x->x_obj, glist),
+           text_xpix(&x->x_obj, glist) + x->width,
+           text_ypix(&x->x_obj, glist) + x->height,
+           x);
+        gui_vmess("gui_gobj_select", "xx", glist_getcanvas(glist), x);
+    }
+    else {
+        sys_vgui(".x%x.c delete %xSEL\n",
+            glist_getcanvas(glist), x);
+        gui_vmess("gui_gobj_deselect", "xx", glist_getcanvas(glist), x);
+    }
 }
 
 static void imagebang_activate(t_gobj *z, t_glist *glist, int state)
@@ -193,10 +270,10 @@ static void imagebang_delete(t_gobj *z, t_glist *glist)
 static void imagebang_vis(t_gobj *z, t_glist *glist, int vis)
 {
     t_imagebang* s = (t_imagebang*)z;
-	if (vis)
-		imagebang_drawme(s, glist, 1);
-	else
-		imagebang_erase(s,glist);
+    if (vis)
+        imagebang_drawme(s, glist, 1);
+    else
+        imagebang_erase(s,glist);
 }
 
 static void imagebang_size(t_imagebang* x,t_floatarg w,t_floatarg h) {
@@ -205,15 +282,17 @@ static void imagebang_size(t_imagebang* x,t_floatarg w,t_floatarg h) {
 }
 
 static void imagebang_imagesize_callback(t_imagebang *x, t_float w, t_float h) {
-	DEBUG(post("received w %f h %f",w,h);)
-	x->width = w;
-	x->height = h;
-	canvas_fixlinesfor(x->glist,(t_text*) x);
+    DEBUG(post("received w %f h %f",w,h);)
+    post("received w %f h %f",w,h);
+    x->width = w;
+    x->height = h;
+    canvas_fixlinesfor(x->glist,(t_text*) x);
 }
-	
+    
 static void imagebang_free(t_imagebang *x) {
-	
-	// check first if variable has been unset and image is unused
+    char key_a[MAXPDSTRING];
+    char key_b[MAXPDSTRING]; 
+    // check first if variable has been unset and image is unused
     // then delete image and unset variable
      DEBUG(sys_vgui("pd [concat DEBUG b in use [image inuse %x_imagebang] \\;]\n",x->image_b);)
      DEBUG(sys_vgui("pd [concat DEBUG a in use [image inuse %x_imagebang] \\;]\n",x->image_a);)
@@ -224,118 +303,175 @@ static void imagebang_free(t_imagebang *x) {
     DEBUG(sys_vgui("pd [concat DEBUG b exists [info exists %x_imagebang] \\;]\n",x->image_b);)
      DEBUG(sys_vgui("pd [concat DEBUG a exists [info exists %x_imagebang] \\;]\n",x->image_a);)
     
+    sprintf(key_a, "%lx_a", (long unsigned int)x);
+    sprintf(key_b, "%lx_b", (long unsigned int)x);
+    gui_vmess("gui_drawimage_free", "s", key_a);
+    gui_vmess("gui_drawimage_free", "s", key_b);
     if (x->receive) {
-		pd_unbind(&x->x_obj.ob_pd,x->receive);
-	}
-	clock_free(x->clock_flash);
-	clock_free(x->clock_brk);
+        pd_unbind(&x->x_obj.ob_pd,x->receive);
+    }
+    clock_free(x->clock_flash);
+    clock_free(x->clock_brk);
     
 }
-	
+    
 static void *imagebang_new(t_symbol *s, int argc, t_atom *argv)
 {
     t_imagebang *x = (t_imagebang *)pd_new(imagebang_class);
-
+    char key_a[MAXPDSTRING];
+    char key_b[MAXPDSTRING];
+    t_atom sane_defaults[2];
+    if (!argc)
+    {
+        post("imagebang: warning: no arguments provided: setting defaults to "
+             "[imagebang dummy dummy]");
+        SETSYMBOL(sane_defaults, gensym("dummy"));
+        SETSYMBOL(sane_defaults+1, gensym("dummy"));
+        argc = 2;
+        argv = sane_defaults;
+    }
     x->glist = (t_glist*) canvas_getcurrent();
-    
     // Set up a callback to get the size
     x->width = 10;
     x->height = 10;
-	
-	x->flashing = 0;
-	
-	x->image_a = NULL;
-	x->image_b = NULL;
-	
-	t_symbol* image_a = NULL;
-	t_symbol* image_b = NULL;
-	
-	const char *fname;
-	
-	// CREATE IMAGES
-	// images are only created if they have not been created yet
-	// we use the symbol pointer to distinguish between image files
-	
-	
-	if ( argc && (argv)->a_type == A_SYMBOL ) {
-		image_a= atom_getsymbol(argv);
-		fname = imagebang_get_filename(x,image_a->s_name); // Get image file path
-		if (fname) {
-			x->image_a = gensym(fname);
-			//sys_vgui("set %x_a \"%s\" \n",x,fname);
-			// Create the image only if the class has not already loaded the same image (with the same symbolic path name)
-			sys_vgui("if { [info exists %x_imagebang] == 0 } { image create photo %x_imagebang -file \"%s\"\n set %x_imagebang 1\n} \n",x->image_a,x->image_a,fname,x->image_a); 
-		    //sys_vgui("pd [concat test %x_imagebang \\;]\n",x->image_a);
-		} else {
-			post("Oops... [imagebang] could not find \"%s\"",image_a->s_name);
-		}
-	}
-   
-    if ( argc > 1 && (argv+1)->a_type == A_SYMBOL ) {
-		image_b= atom_getsymbol(argv+1);
-		fname = imagebang_get_filename(x,image_b->s_name); // Get image file path
-		if (fname) {
-			x->image_b = gensym(fname);
-			//sys_vgui("set %x_b \"%s\" \n",x,fname);
-			sys_vgui("if { [info exists %x_imagebang] == 0} { image create photo %x_imagebang -file \"%s\"\n set %x_imagebang 1\n} \n",x->image_b,x->image_b,fname,x->image_b);
-			//sys_vgui("pd [concat test %x_imagebang \\;]\n",x->image_b);
-		} else {
-			post("Oops... [imagebang] could not find \"%s\"",image_b->s_name);
-		}
-	}
-	
-	// Stop if no images	
-	if (x->image_a == NULL || x->image_b == NULL) {
-		post("Could not create [imagebang]... either no gif images defined or found!");
-		return NULL;
-	}
-	
-	x->send = NULL;
-	if ( argc > 2 && (argv+2)->a_type == A_SYMBOL ) {
-		x->send = atom_getsymbol(argv+2);
-	}
-	
-	if ( argc > 3 && (argv+3)->a_type == A_SYMBOL ) {
-		x->receive = atom_getsymbol(argv+3);
-	} else {
-	   // Create default receiver if none set
-		char buf[MAXPDSTRING];
-		sprintf(buf, "#%lx", (long)x);
-		x->receive = gensym(buf);
-	}
-	
+
+    x->flashing = 0;
+
+    x->image_a = NULL;
+    x->image_b = NULL;
+
+    t_symbol* image_a = NULL;
+    t_symbol* image_b = NULL;
+
+    const char *fname;
+
+    // CREATE IMAGES
+    // images are only created if they have not been created yet
+    // we use the symbol pointer to distinguish between image files
+
+    if ( argc && (argv)->a_type == A_SYMBOL )
+    {
+        image_a= atom_getsymbol(argv);
+        sprintf(key_a, "%lx_a", (long unsigned int)x);
+
+        // Get image file path
+        fname = imagebang_get_filename(x,image_a->s_name);
+        if (fname)
+        {
+            x->image_a = gensym(fname);
+            //sys_vgui("set %x_a \"%s\" \n",x,fname);
+            // Create the image only if the class has not already loaded the
+            // same image (with the same symbolic path name)
+            //sys_vgui("if { [info exists %x_imagebang] == 0 } "
+            //         "{ image create photo %x_imagebang "
+            //         "-file \"%s\"\n set %x_imagebang 1\n} \n",
+            //             x->image_a,x->image_a,fname,x->image_a); 
+            //sys_vgui("pd [concat test %x_imagebang \\;]\n",x->image_a);
+            gui_vmess("gui_load_image", "xss",
+                canvas_getcurrent(),
+                key_a,
+                fname);
+        }
+        else
+        {
+            x->image_a = &s_;
+            pd_error(x, "could not find image \"%s\": using default image",
+                image_a->s_name);
+            gui_vmess("gui_load_default_image", "xs",
+                canvas_getcurrent(),
+                key_a);
+        }
+    }
+    if ( argc > 1 && (argv+1)->a_type == A_SYMBOL )
+    {
+        image_b= atom_getsymbol(argv+1);
+        sprintf(key_b, "%lx_b", (long unsigned int)x);
+
+        // Get image file path
+        fname = imagebang_get_filename(x,image_b->s_name);
+        if (fname)
+        {
+            x->image_b = gensym(fname);
+            //sys_vgui("set %x_b \"%s\" \n",x,fname);
+            //sys_vgui("if { [info exists %x_imagebang] == 0} "
+            //         "{ image create photo %x_imagebang "
+            //         "-file \"%s\"\n set %x_imagebang 1\n} \n",
+            //             x->image_b,x->image_b,fname,x->image_b);
+            //sys_vgui("pd [concat test %x_imagebang \\;]\n",x->image_b);
+            gui_vmess("gui_load_image", "xss",
+                canvas_getcurrent(),
+                key_b,
+                fname);
+        }
+        else
+        {
+            x->image_b = &s_;
+            pd_error(x, "could not find image \"%s\": using default image",
+                image_b->s_name);
+            gui_vmess("gui_load_default_image", "xs",
+                canvas_getcurrent(),
+                key_b);
+        }
+    }
+
+    // Stop if no images    
+    //if ( x->image_a == NULL || x->image_b == NULL)
+    //{
+    //    post("Could not create [imagebang]... "
+    //         "either no gif images defined or found!");
+    //    return NULL;
+    //}
+
+    x->send = NULL;
+    if ( argc > 2 && (argv+2)->a_type == A_SYMBOL )
+    {
+        x->send = atom_getsymbol(argv+2);
+    }
+
+    if ( argc > 3 && (argv+3)->a_type == A_SYMBOL )
+    {
+        x->receive = atom_getsymbol(argv+3);
+    }
+    else
+    {
+       // Create default receiver if none set
+        char buf[MAXPDSTRING];
+        sprintf(buf, "#%lx", (long)x);
+        x->receive = gensym(buf);
+    }
+
     pd_bind(&x->x_obj.ob_pd, x->receive );
-    
-	x->clock_flash = clock_new(x, (t_method)imagebang_flash_timeout);
-	x->clock_brk = clock_new(x, (t_method)imagebang_brk_timeout);
-	x->outlet = outlet_new(&x->x_obj, &s_float);
-	return (x);
-   
+
+    x->clock_flash = clock_new(x, (t_method)imagebang_flash_timeout);
+    x->clock_brk = clock_new(x, (t_method)imagebang_brk_timeout);
+    x->outlet = outlet_new(&x->x_obj, &s_float);
+    return (x);
 }
 
 void imagebang_setup(void)
 {
     imagebang_class = class_new(gensym("imagebang"),
-		(t_newmethod)imagebang_new, (t_method)imagebang_free,
-		sizeof(t_imagebang),0, A_GIMME,0);
+        (t_newmethod)imagebang_new, (t_method)imagebang_free,
+        sizeof(t_imagebang),0, A_GIMME,0);
 
-    class_addmethod(imagebang_class, (t_method)imagebang_imagesize_callback,\
-		gensym("_imagesize"), A_DEFFLOAT, A_DEFFLOAT, 0);
+    class_addmethod(imagebang_class, (t_method)imagebang_imagesize_callback,
+        gensym("_imagesize"), A_DEFFLOAT, A_DEFFLOAT, 0);
 
     class_addbang(imagebang_class,(t_method)imagebang_bang);
     
-    imagebang_widgetbehavior.w_getrectfn =	imagebang_getrect;
-    imagebang_widgetbehavior.w_displacefn =	imagebang_displace;
-    imagebang_widgetbehavior.w_selectfn =	imagebang_select;
-    imagebang_widgetbehavior.w_activatefn =	imagebang_activate;
-    imagebang_widgetbehavior.w_deletefn =	imagebang_delete;
-    imagebang_widgetbehavior.w_visfn =		imagebang_vis;
+    imagebang_widgetbehavior.w_getrectfn =    imagebang_getrect;
+    imagebang_widgetbehavior.w_displacefn =    imagebang_displace;
+    imagebang_widgetbehavior.w_selectfn =    imagebang_select;
+    imagebang_widgetbehavior.w_activatefn =    imagebang_activate;
+    imagebang_widgetbehavior.w_deletefn =    imagebang_delete;
+    imagebang_widgetbehavior.w_visfn =        imagebang_vis;
+    imagebang_widgetbehavior.w_displacefnwtag =    imagebang_displace_wtag;
 
     imagebang_widgetbehavior.w_clickfn = (t_clickfn)imagebang_click;
     
 
 #if PD_MINOR_VERSION < 37
-	imagebang_widgetbehavior.w_propertiesfn = NULL; 
+    imagebang_widgetbehavior.w_propertiesfn = NULL; 
     //imagebang_widgetbehavior.w_savefn = imagebang_save;
 #endif
     
diff --git a/pd/nw/pdgui.js b/pd/nw/pdgui.js
index aa9c5161b..ca8f870bc 100644
--- a/pd/nw/pdgui.js
+++ b/pd/nw/pdgui.js
@@ -3459,6 +3459,7 @@ function gui_drawnumber_vis(cid, parent_tag, tag, x, y, scale_x, scale_y,
 // to cache image data for image-handling classes:
 // ggee/image
 // moonlib/image (for backwards compatibility only: its API is inherently leaky)
+// tof/imagebang
 // draw sprite
 // draw image
 var pd_cache = (function() {
@@ -3658,8 +3659,10 @@ function gui_load_image(cid, key, filepath) {
     });
 }
 
-// Draw an image in an object-- used for ggee/image and
-// moonlib/image. For the meaning of tk_anchor see img_size_setter.
+// Draw an image in an object-- used for ggee/image, moonlib/image and
+// tof/imagebang. For the meaning of tk_anchor see img_size_setter. This
+// interface assumes there is only one image per gobject. If you try to
+// set more you'll get duplicate ids.
 function gui_gobj_draw_image(cid, tag, image_key, tk_anchor) {
     var g = get_gobj(cid, tag),
         i = create_item(cid, "image", {
-- 
GitLab


From 070594c403e7206871e1dc64586584f58ee9e0e2 Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Fri, 28 Jul 2017 23:02:30 -0400
Subject: [PATCH 27/98] update external test script

---
 scripts/external-tests.pd | 32 ++++++++++++++++----------------
 1 file changed, 16 insertions(+), 16 deletions(-)

diff --git a/scripts/external-tests.pd b/scripts/external-tests.pd
index db9d2d323..fc4d23392 100644
--- a/scripts/external-tests.pd
+++ b/scripts/external-tests.pd
@@ -1,4 +1,4 @@
-#N canvas 154 25 751 635 12;
+#N canvas 162 25 751 671 12;
 #X msg 513 70 bang;
 #N canvas 273 114 533 496 get_extensions 0;
 #X obj 17 44 inlet;
@@ -501,10 +501,7 @@ may be other oddities in external libs with regard to libdir prefixes.
 #X obj 102 163 f;
 #X obj 102 188 + 1;
 #X msg 274 263 set;
-#X msg 66 307 \$1 \, \$2 \, \$3 \, \$4 \, \$5 \, \$6 \, \$7 \, \$8
-\, \$9 \, \$10 \, \$11 \, \$12 \, \$13 \, \$14 \, \$15 \, \$16 \, \$17
-\, \$18 \, \$19 \, \$20 \, \$21 \, \$22 \, \$23 \, \$24 \, \$25 \,
-\$26 \, \$27 \, \$28 \, \$29 \, \$30 \, \$31 \, \$32 \, \$33 \,;
+#X msg 66 307 \$1 \,;
 #X obj 66 263 list;
 #X msg 102 263 adddollar \$1 \, addcomma;
 #X msg 150 126 0;
@@ -719,22 +716,25 @@ maxlib memento mjlib motex osx pddp pdogg pixeltango pmpd rradical
 sigpack smlib unauthorized vbap pan freeverb~ hcs jmmmp ext13 ggee
 iem_anything ekext hexloader disis lyonpotpourri;
 #X obj 37 44 t b b b b;
-#N canvas 340 199 450 300 libs_not_loaded_by_default 1;
+#N canvas 319 177 550 418 libs_not_loaded_by_default 0;
 #X obj 10 11 inlet;
-#X obj 10 231 outlet;
+#X obj 10 251 outlet;
+#X text 104 243 problems;
+#X text 104 263 iem_tab: 45 classes that refuse to create without args
+;
+#X text 104 283 tof: param class is too complex to easily give default
+args;
 #X msg 10 36 adaptive arraysize autotune~ bassemu~ bob~ boids bonk~
 bsaylor choice comport controctopus fluid~ hid iem16 iem_adaptfilt
 iem_ambi iem_bin_ambi iem_delay iemgui iemmatrix iem_roomsim iem_spec2
-iem_tab iemxmlrpc jasch_lib K12 la-kitchen loop~ lrshift~ memento-p
-mjlib moocow moonlib motex mrpeach nsend pan pd~ pdcontainer pd-wavelet
-pique plugin~ pmpd purepd rjlib rradical rtc sfruit sigmund~ stdout
-timestretch tof windowing;
-#X text 110 172 ratchet up as we go;
-#X obj 10 173 list split 12;
-#X connect 0 0 2 0;
-#X connect 2 0 4 0;
-#X connect 4 0 1 0;
+iemxmlrpc jasch_lib K12 la-kitchen loop~ lrshift~ memento-p mjlib moocow
+moonlib motex mrpeach nsend pan pd~ pdcontainer pd-wavelet pique plugin~
+pmpd purepd rjlib rradical rtc sfruit sigmund~ stdout timestretch windowing
+;
+#X connect 0 0 5 0;
+#X connect 5 0 1 0;
 #X restore 57 164 pd libs_not_loaded_by_default;
+#X text 269 163 <- two libraries to go: tof and iem_tab;
 #X connect 0 0 2 0;
 #X connect 1 0 4 0;
 #X connect 2 0 14 0;
-- 
GitLab


From 147ef8aee60fe2d82bc15ec595b943ff6935bcf1 Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Sat, 29 Jul 2017 08:55:57 -0400
Subject: [PATCH 28/98] fix typo

---
 abstractions/Makefile | 32 ++++++++++++++++----------------
 1 file changed, 16 insertions(+), 16 deletions(-)

diff --git a/abstractions/Makefile b/abstractions/Makefile
index 5c1014fad..1f2edb1ac 100644
--- a/abstractions/Makefile
+++ b/abstractions/Makefile
@@ -112,22 +112,22 @@ la-kitchen_install:
 #	install -p $(abstractions_src)/La-kitchen/doc/*.* \
 #		 $(DESTDIR)$(manualsdir)/$(LA-KITCHEN_NAME)
 	# Remove abstractions that are already in mapping.
-	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN-NAME)/amplitude_n.pd
-	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN-NAME)/amplitude_n-help.pd
-	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN-NAME)/debounce.pd
-	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN-NAME)/debounce-help.pd
-	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN-NAME)/last_n.pd
-	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN-NAME)/last_n-help.pd
-	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN-NAME)/max_n.pd
-	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN-NAME)/max_n-help.pd
-	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN-NAME)/median_3.pd
-	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN-NAME)/median_3-help.pd
-	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN-NAME)/median_5.pd
-	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN-NAME)/median_5-help.pd
-	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN-NAME)/median_7.pd
-	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN-NAME)/median_7-help.pd
-	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN-NAME)/min_n.pd
-	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN-NAME)/min_n-help.pd
+	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN_NAME)/amplitude_n.pd
+	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN_NAME)/amplitude_n-help.pd
+	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN_NAME)/debounce.pd
+	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN_NAME)/debounce-help.pd
+	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN_NAME)/last_n.pd
+	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN_NAME)/last_n-help.pd
+	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN_NAME)/max_n.pd
+	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN_NAME)/max_n-help.pd
+	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN_NAME)/median_3.pd
+	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN_NAME)/median_3-help.pd
+	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN_NAME)/median_5.pd
+	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN_NAME)/median_5-help.pd
+	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN_NAME)/median_7.pd
+	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN_NAME)/median_7-help.pd
+	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN_NAME)/min_n.pd
+	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN_NAME)/min_n-help.pd
 	install -p $(abstractions_src)/La-kitchen/readme.txt \
 		$(DESTDIR)$(objectsdir)/$(LA_KITCHEN_NAME)/README.txt
 
-- 
GitLab


From b3dda6b4f8e2df8ce57a294b946c12d9d843a78d Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Sat, 29 Jul 2017 10:26:10 -0400
Subject: [PATCH 29/98] remove line referencing non-existent help files

---
 abstractions/Makefile | 3 ---
 1 file changed, 3 deletions(-)

diff --git a/abstractions/Makefile b/abstractions/Makefile
index 1f2edb1ac..8f28959ea 100644
--- a/abstractions/Makefile
+++ b/abstractions/Makefile
@@ -121,11 +121,8 @@ la-kitchen_install:
 	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN_NAME)/max_n.pd
 	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN_NAME)/max_n-help.pd
 	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN_NAME)/median_3.pd
-	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN_NAME)/median_3-help.pd
 	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN_NAME)/median_5.pd
-	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN_NAME)/median_5-help.pd
 	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN_NAME)/median_7.pd
-	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN_NAME)/median_7-help.pd
 	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN_NAME)/min_n.pd
 	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN_NAME)/min_n-help.pd
 	install -p $(abstractions_src)/La-kitchen/readme.txt \
-- 
GitLab


From d4119d6a1c1a0a872f34be4750ab428c7b417fdb Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Sat, 29 Jul 2017 11:16:41 -0400
Subject: [PATCH 30/98] remove references to helpers in fluid~ that got removed

---
 externals/fluid~/makefile | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/externals/fluid~/makefile b/externals/fluid~/makefile
index 5de6b095c..1ff4c32fc 100755
--- a/externals/fluid~/makefile
+++ b/externals/fluid~/makefile
@@ -6,6 +6,6 @@ class.sources = fluid~.c
 
 ldlibs = -lfluidsynth
 
-datafiles = ezdac~.pd fluid~-help.pd fluid.pd fluid.gen2sym.pd simple_onthego_synth.pd fluid.gen.txt LICENSE README 
+datafiles = fluid~-help.pd fluid.gen2sym.pd simple_onthego_synth.pd fluid.gen.txt LICENSE README 
 
 include Makefile.pdlibbuilder.revised
-- 
GitLab


From 04ebaffd5beb54195d8b2b8ae7dbf9b5ea698231 Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Sun, 30 Jul 2017 22:09:34 -0400
Subject: [PATCH 31/98] intermediate state for the tests: * the original
 namespace-collision checker only worked for abstractions * trying a new
 namespace-collision checker revealed about 80 new clashes.   Since there are
 so many it's probably too disruptive to remove them. * probably need to
 revert the namespace clash abstraction removals

---
 scripts/external-tests.pd | 129 +++++++++++++++++++++++++++++++++-----
 1 file changed, 115 insertions(+), 14 deletions(-)

diff --git a/scripts/external-tests.pd b/scripts/external-tests.pd
index fc4d23392..b9c6b358e 100644
--- a/scripts/external-tests.pd
+++ b/scripts/external-tests.pd
@@ -1,4 +1,4 @@
-#N canvas 162 25 751 671 12;
+#N canvas 104 25 751 671 12;
 #X msg 513 70 bang;
 #N canvas 273 114 533 496 get_extensions 0;
 #X obj 17 44 inlet;
@@ -176,7 +176,7 @@
 #X obj 77 285 t a b a b;
 #N canvas 443 86 450 557 get-creator-names 0;
 #X obj 41 22 inlet;
-#X obj 51 316 outlet;
+#X obj 51 356 outlet;
 #X obj 141 54 r \$0-last-objectmaker-methodspace-length;
 #X obj 100 167 -;
 #X obj 41 107 classinfo objectmaker;
@@ -187,6 +187,9 @@
 #X obj 51 284 classinfo objectmaker;
 #X obj 151 181 t a;
 #X obj 41 47 bang;
+#X obj 51 309 t a a;
+#X obj 140 355 print testing;
+#X msg 123 329 \$1;
 #X connect 0 0 11 0;
 #X connect 2 0 3 1;
 #X connect 2 0 10 0;
@@ -197,11 +200,14 @@
 #X connect 7 0 8 0;
 #X connect 7 0 9 0;
 #X connect 8 0 7 1;
-#X connect 9 0 1 0;
+#X connect 9 0 12 0;
 #X connect 10 0 7 1;
 #X connect 11 0 5 0;
+#X connect 12 0 1 0;
+#X connect 12 1 14 0;
+#X connect 14 0 13 0;
 #X restore 77 686 pd get-creator-names;
-#N canvas 227 231 450 346 test-object 0;
+#N canvas 228 256 450 346 test-object 0;
 #X obj 86 36 inlet;
 #X text 132 34 creator_name argtype1 argtype2 etc.;
 #N canvas 150 78 649 452 right_outlet_for_aliases 0;
@@ -241,7 +247,7 @@ test(s) by going to the right outlet.;
 #X connect 14 0 10 0;
 #X connect 15 0 11 0;
 #X restore 86 61 pd right_outlet_for_aliases;
-#N canvas 181 94 522 576 namespace_collisions 0;
+#N canvas 182 119 522 576 namespace_collisions 0;
 #X obj 40 15 inlet;
 #X obj 60 98 list split 1;
 #X obj 60 123 t b a;
@@ -267,6 +273,7 @@ test(s) by going to the right outlet.;
 #X msg 70 431 \$1: externdir mismatch: expected \$2 but got \$3;
 #X obj 180 143 pack s s;
 #X obj 40 489 list;
+#X obj 259 278 print externdir;
 #X connect 0 0 11 0;
 #X connect 1 0 2 0;
 #X connect 2 0 3 0;
@@ -279,6 +286,7 @@ test(s) by going to the right outlet.;
 #X connect 8 0 10 1;
 #X connect 8 0 19 1;
 #X connect 9 0 21 0;
+#X connect 9 0 25 0;
 #X connect 10 0 12 0;
 #X connect 10 1 13 0;
 #X connect 11 0 15 0;
@@ -298,8 +306,8 @@ test(s) by going to the right outlet.;
 #X connect 22 0 18 0;
 #X connect 23 0 8 0;
 #X connect 24 0 17 0;
-#X restore 86 101 pd namespace_collisions;
-#N canvas 104 25 740 671 load_the_object 0;
+#X restore 17 308 pd namespace_collisions;
+#N canvas 3 25 740 694 load_the_object 0;
 #X obj 22 13 inlet;
 #X obj 86 115 list split 1;
 #N canvas 238 121 613 490 set_args 0;
@@ -475,18 +483,109 @@ may be other oddities in external libs with regard to libdir prefixes.
 #X connect 26 0 21 0;
 #X connect 26 1 1 0;
 #X restore 86 156 pd load_the_object;
-#X obj 272 101 t a;
 #N canvas 268 243 450 346 \$0-load_the_object_subpatch 0;
 #X restore 231 157 pd \$0-load_the_object_subpatch;
 #X msg 86 241 clear;
 #X obj 86 266 s pd-\$0-load_the_object_subpatch;
-#X connect 0 0 2 0;
-#X connect 2 0 3 0;
-#X connect 2 1 5 0;
+#N canvas 99 25 704 622 check_for_namespace_collisions 0;
+#X obj 42 26 inlet;
+#X obj 42 51 t a a;
+#X obj 74 83 list split 1;
+#X obj 74 215 f;
+#X obj 114 215 + 1;
+#X obj 74 149 until;
+#X obj 74 283 classinfo objectmaker;
+#X obj 74 321 route bang;
+#X obj 9 182 bang;
+#X obj 141 385 select;
+#X obj 141 349 list split 1;
+#X obj 74 108 trigger bang bang anything;
+#X obj 163 149 f 0;
+#N canvas 337 184 583 424 fail 0;
+#X obj 106 16 inlet;
+#X obj 334 56 r \$0-current-libdir-name;
+#X obj 243 56 r \$0-libdir;
+#X obj 204 101 symbol;
+#X obj 270 100 symbol;
+#X msg 204 161 symbol \$1/extra/\$2;
+#X obj 204 136 pack s s;
+#X obj 106 41 t a a b b;
+#X obj 106 293 s \$0-fail;
+#X obj 106 66 unpack f s;
+#X obj 106 213 pack f s s s;
+#X msg 106 248 \$3: \$2: externdir mismatch: expected \$4 but found
+another objectmaker method at index \$1;
+#X connect 0 0 7 0;
+#X connect 1 0 4 1;
+#X connect 2 0 3 1;
+#X connect 2 0 10 2;
+#X connect 3 0 6 0;
+#X connect 4 0 6 1;
+#X connect 5 0 10 3;
+#X connect 6 0 5 0;
+#X connect 7 0 9 0;
+#X connect 7 2 3 0;
+#X connect 7 3 4 0;
+#X connect 9 0 10 0;
+#X connect 9 1 10 1;
+#X connect 10 0 11 0;
+#X connect 11 0 8 0;
+#X restore 141 590 pd fail;
+#X obj 163 174 trigger anything anything;
+#X obj 141 420 f;
+#X obj 181 420 + 1;
+#X obj 74 250 trigger anything anything;
+#X obj 141 445 select 1 0;
+#X obj 228 476 f;
+#X obj 141 504 f;
+#X obj 38 568 outlet;
+#X obj 141 560 pack f s;
+#X obj 344 337 r \$0-last-objectmaker-methodspace-length;
+#X obj 141 532 moses;
+#X text 264 475 Many libraries ship with backup abstractions that have
+the same name as the binary library. We check for those here-- if the
+nameclash is in the current library we're testing then we ignore it.
+;
+#X connect 0 0 1 0;
+#X connect 1 0 21 0;
+#X connect 1 1 2 0;
+#X connect 2 0 11 0;
 #X connect 3 0 4 0;
-#X connect 4 0 7 0;
-#X connect 5 0 4 0;
+#X connect 3 0 17 0;
+#X connect 4 0 3 1;
+#X connect 5 0 3 0;
+#X connect 6 0 7 0;
 #X connect 7 0 8 0;
+#X connect 7 1 10 0;
+#X connect 8 0 5 1;
+#X connect 9 0 15 0;
+#X connect 10 0 9 0;
+#X connect 11 0 5 0;
+#X connect 11 1 12 0;
+#X connect 11 2 9 1;
+#X connect 11 2 22 1;
+#X connect 12 0 14 0;
+#X connect 14 0 3 1;
+#X connect 14 1 15 1;
+#X connect 15 0 16 0;
+#X connect 15 0 18 0;
+#X connect 16 0 15 1;
+#X connect 17 0 6 0;
+#X connect 17 1 19 1;
+#X connect 18 0 20 0;
+#X connect 18 1 19 0;
+#X connect 19 0 20 1;
+#X connect 20 0 24 0;
+#X connect 22 0 13 0;
+#X connect 23 0 24 1;
+#X connect 24 0 22 0;
+#X restore 86 104 pd check_for_namespace_collisions;
+#X connect 0 0 2 0;
+#X connect 2 0 8 0;
+#X connect 2 1 8 0;
+#X connect 4 0 6 0;
+#X connect 6 0 7 0;
+#X connect 8 0 4 0;
 #X restore 77 716 pd test-object;
 #X obj 249 340 classinfo objectmaker;
 #X msg 249 315 methods;
@@ -501,7 +600,7 @@ may be other oddities in external libs with regard to libdir prefixes.
 #X obj 102 163 f;
 #X obj 102 188 + 1;
 #X msg 274 263 set;
-#X msg 66 307 \$1 \,;
+#X msg 66 307 \$1 \, \$2 \,;
 #X obj 66 263 list;
 #X msg 102 263 adddollar \$1 \, addcomma;
 #X msg 150 126 0;
@@ -735,6 +834,7 @@ pmpd purepd rjlib rradical rtc sfruit sigmund~ stdout timestretch windowing
 #X connect 5 0 1 0;
 #X restore 57 164 pd libs_not_loaded_by_default;
 #X text 269 163 <- two libraries to go: tof and iem_tab;
+#X obj 476 290 print next_library;
 #X connect 0 0 2 0;
 #X connect 1 0 4 0;
 #X connect 2 0 14 0;
@@ -767,6 +867,7 @@ pmpd purepd rjlib rradical rtc sfruit sigmund~ stdout timestretch windowing
 #X connect 36 0 19 0;
 #X connect 36 1 35 0;
 #X connect 36 1 37 0;
+#X connect 36 1 43 0;
 #X connect 37 0 38 0;
 #X connect 38 0 31 0;
 #X connect 39 0 28 0;
-- 
GitLab


From 7bed56eca884dca7603b52fce0fd1930568bc17e Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Fri, 4 Aug 2017 18:11:57 -0400
Subject: [PATCH 32/98] make [declare -lib] handle absolute paths (and
 namespace-prefixed paths) consistent with object boxes

---
 pd/src/g_canvas.c | 9 ++++++++-
 pd/src/m_class.c  | 2 +-
 2 files changed, 9 insertions(+), 2 deletions(-)

diff --git a/pd/src/g_canvas.c b/pd/src/g_canvas.c
index c0b10036b..e9c8f2d27 100644
--- a/pd/src/g_canvas.c
+++ b/pd/src/g_canvas.c
@@ -1922,6 +1922,7 @@ static void canvas_stdlib(t_canvasenvironment *e, char *stdlib)
     }
 }
 
+extern t_symbol *class_loadsym;     /* name under which an extern is invoked */
 
 void canvas_declare(t_canvas *x, t_symbol *s, int argc, t_atom *argv)
 {
@@ -1948,7 +1949,13 @@ void canvas_declare(t_canvas *x, t_symbol *s, int argc, t_atom *argv)
         }
         else if ((argc > i+1) && !strcmp(flag, "-lib"))
         {
-            sys_load_lib(x, atom_getsymbolarg(i+1, argc, argv)->s_name);
+            /* set class_loadsym in case we're loading a library by
+               absolute or namespace-prefixed path. Not sure yet
+               exactly how stdlib works so I haven't touched that
+               one... */
+            class_loadsym = atom_getsymbolarg(i+1, argc, argv);
+            sys_load_lib(x, class_loadsym->s_name);
+            class_loadsym = NULL;
             i++;
         }
         else if ((argc > i+1) && !strcmp(flag, "-stdlib"))
diff --git a/pd/src/m_class.c b/pd/src/m_class.c
index 54cfa965d..062746561 100644
--- a/pd/src/m_class.c
+++ b/pd/src/m_class.c
@@ -26,7 +26,7 @@
 #define snprintf sprintf_s
 #endif
 
-static t_symbol *class_loadsym;     /* name under which an extern is invoked */
+t_symbol *class_loadsym;     /* name under which an extern is invoked */
 static void pd_defaultfloat(t_pd *x, t_float f);
 static void pd_defaultblob(t_pd *x, t_blob *st); /* MP20061226 blob type */
 static void pd_defaultlist(t_pd *x, t_symbol *s, int argc, t_atom *argv);
-- 
GitLab


From 91c256f44fc661dfa3fe4626699ec39913e923a7 Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Fri, 4 Aug 2017 23:47:13 -0400
Subject: [PATCH 33/98] simplify external-tests.pd to only load and instantiate
 using absolute paths

---
 scripts/external-tests.pd | 779 ++++++++++++++++++--------------------
 1 file changed, 374 insertions(+), 405 deletions(-)

diff --git a/scripts/external-tests.pd b/scripts/external-tests.pd
index b9c6b358e..07ea528f8 100644
--- a/scripts/external-tests.pd
+++ b/scripts/external-tests.pd
@@ -1,6 +1,90 @@
-#N canvas 104 25 751 671 12;
-#X msg 513 70 bang;
-#N canvas 273 114 533 496 get_extensions 0;
+#N canvas 1 25 659 646 12;
+#X obj 61 34 loadbang;
+#N canvas 107 123 756 233 load_hcs/folder_list 0;
+#X obj 357 47 inlet;
+#X obj 357 155 s pd-\$0-hcs/folder_list;
+#N canvas 288 225 450 300 \$0-hcs/folder_list 0;
+#X restore 43 113 pd \$0-hcs/folder_list;
+#X obj 43 47 inlet;
+#X obj 43 76 s \$0-fl-in;
+#X obj 43 149 r \$0-fl-out;
+#X obj 43 180 outlet;
+#X msg 357 90 clear \, obj 5 5 receive \$0-fl-in \, obj 5 30 \$1/extra/hcs/folder_list
+\, obj 5 55 send \$0-fl-out \, connect 0 0 1 0 \, connect 1 0 2 0;
+#X connect 0 0 7 0;
+#X connect 3 0 4 0;
+#X connect 5 0 6 0;
+#X connect 7 0 1 0;
+#X restore 164 429 pd load_hcs/folder_list;
+#X text 304 45 \$0-libdir - directory containing doc and extra;
+#N canvas 44 204 956 472 list_of_libdirs 0;
+#X obj 24 9 inlet;
+#X msg 24 150 libdir cyclone zexy creb cxc iemlib list-abs mapping
+markex maxlib memento mjlib motex osx pddp pdogg pixeltango pmpd rradical
+sigpack smlib unauthorized vbap pan freeverb~ hcs jmmmp ext13 ggee
+iem_anything ekext hexloader disis lyonpotpourri;
+#X text 70 128 libraries that are loaded at startup in Purr Data;
+#X text 49 267 Gem is currently excluded because it doesn't run on
+all platforms;
+#X obj 24 408 outlet;
+#X text 510 128 legacy libraries that are not loaded at startup;
+#X text 511 315 iem_tab: 45 classes that refuse to create without args
+;
+#X text 511 338 tof: param class is too complex to easily give default
+args;
+#X text 585 293 Missing:;
+#X text 84 245 Missing:;
+#X obj 24 376 list append;
+#X obj 24 35 trigger bang bang;
+#X msg 489 150 adaptive arraysize autotune~ bassemu~ bob~ boids bonk~
+bsaylor choice comport controctopus fluid~ hid iem16 iem_adaptfilt
+iem_ambi iem_bin_ambi iem_delay iemgui iemmatrix iem_roomsim iem_spec2
+iemxmlrpc jasch_lib K12 la-kitchen loop~ lrshift~ memento-p mjlib moocow
+moonlib motex mrpeach nsend pan pd~ pdcontainer pd-wavelet pique plugin~
+pmpd purepd rjlib rradical rtc sfruit sigmund~ stdout timestretch windowing
+;
+#X connect 0 0 11 0;
+#X connect 1 0 10 0;
+#X connect 10 0 4 0;
+#X connect 11 0 1 0;
+#X connect 11 1 12 0;
+#X connect 12 0 10 1;
+#X restore 132 124 pd list_of_libdirs;
+#N canvas 245 192 382 392 list_drip 0;
+#X obj 67 30 inlet;
+#X obj 102 83 list length;
+#X obj 102 108 until;
+#X obj 102 163 f;
+#X obj 102 188 + 1;
+#X msg 274 263 set;
+#X msg 66 307 \$1 \, \$2 \,;
+#X obj 66 263 list;
+#X msg 102 263 adddollar \$1 \, addcomma;
+#X msg 150 126 0;
+#X obj 66 332 symbol;
+#X obj 66 357 outlet;
+#X obj 67 55 trigger anything anything bang;
+#X obj 144 224 b;
+#X connect 0 0 12 0;
+#X connect 1 0 2 0;
+#X connect 2 0 3 0;
+#X connect 3 0 4 0;
+#X connect 4 0 3 1;
+#X connect 4 0 8 0;
+#X connect 5 0 6 0;
+#X connect 6 0 10 0;
+#X connect 7 0 6 0;
+#X connect 8 0 6 0;
+#X connect 9 0 3 1;
+#X connect 10 0 11 0;
+#X connect 12 0 7 0;
+#X connect 12 1 1 0;
+#X connect 12 2 5 0;
+#X connect 12 2 9 0;
+#X connect 12 2 13 0;
+#X connect 13 0 7 1;
+#X restore 132 154 pd list_drip;
+#N canvas 389 65 533 579 get_extensions 0;
 #X obj 17 44 inlet;
 #X obj 17 70 bang;
 #X msg 17 105 platform;
@@ -20,7 +104,9 @@
 #X msg 106 205 .pd_darwin .d_fat;
 #X obj 299 397 list;
 #X msg 246 205 .dll .m_i386;
-#X obj 17 460 outlet;
+#X obj 17 460 list append .pd;
+#X text 131 459 add ".pd" extension for abstractions;
+#X obj 17 485 outlet;
 #X connect 0 0 1 0;
 #X connect 1 0 2 0;
 #X connect 2 0 3 0;
@@ -47,78 +133,49 @@
 #X connect 16 0 17 0;
 #X connect 17 0 19 0;
 #X connect 18 0 17 0;
-#X restore 97 345 pd get_extensions;
-#N canvas 453 108 450 323 get_libdir 0;
-#X obj 119 58 inlet;
-#X obj 119 135 pdinfo;
-#X obj 119 84 b;
-#X msg 119 110 libdir;
-#X obj 119 161 outlet;
-#X connect 0 0 2 0;
-#X connect 1 0 4 0;
-#X connect 2 0 3 0;
-#X connect 3 0 1 0;
-#X restore 513 95 pd get_libdir;
-#N canvas 107 123 756 233 load_hcs/folder_list 0;
-#X obj 306 40 inlet;
-#X obj 306 133 s pd-\$0-hcs/folder_list;
-#N canvas 0 0 450 300 \$0-hcs/folder_list 0;
-#X obj 5 5 receive 1003-fl-in;
-#X obj 5 30 /usr/lib/pd-l2ork/extra/hcs/folder_list;
-#X obj 5 55 send 1003-fl-out;
-#X connect 0 0 1 0;
+#X connect 19 0 21 0;
+#X restore 310 184 pd get_extensions;
+#X obj 164 275 list;
+#N canvas 245 192 382 392 list_drip 0;
+#X obj 67 30 inlet;
+#X obj 102 83 list length;
+#X obj 102 108 until;
+#X obj 102 163 f;
+#X obj 102 188 + 1;
+#X msg 274 263 set;
+#X msg 66 307 \$1 \, \$2 \,;
+#X obj 66 263 list;
+#X msg 102 263 adddollar \$1 \, addcomma;
+#X msg 150 126 0;
+#X obj 66 332 symbol;
+#X obj 66 357 outlet;
+#X obj 67 55 trigger anything anything bang;
+#X obj 144 224 b;
+#X connect 0 0 12 0;
 #X connect 1 0 2 0;
-#X restore 37 97 pd \$0-hcs/folder_list;
-#X obj 37 40 inlet;
-#X obj 37 65 s \$0-fl-in;
-#X obj 37 128 r \$0-fl-out;
-#X obj 37 154 outlet;
-#X msg 306 77 clear \, obj 5 5 receive \$0-fl-in \, obj 5 30 \$1/extra/hcs/folder_list
-\, obj 5 55 send \$0-fl-out \, connect 0 0 1 0 \, connect 1 0 2 0;
-#X connect 0 0 7 0;
+#X connect 2 0 3 0;
 #X connect 3 0 4 0;
-#X connect 5 0 6 0;
-#X connect 7 0 1 0;
-#X restore 97 569 pd load_hcs/folder_list;
-#N canvas 0 0 450 300 add_.pd 0;
-#X obj 66 29 inlet;
-#X obj 66 55 list append .pd;
-#X obj 66 80 outlet;
-#X connect 0 0 1 0;
-#X connect 1 0 2 0;
-#X restore 97 371 pd add_.pd;
-#X obj 97 425 t a a;
-#X obj 97 487 pack s s s;
-#X obj 37 19 loadbang;
-#X obj 130 453 s \$0-ext;
-#X obj 332 596 r \$0-reset;
-#X obj 150 317 s \$0-reset;
-#X msg 150 285 bang;
-#N canvas 0 0 450 300 remove_ext 0;
-#X obj 28 30 inlet;
-#X obj 78 150 r \$0-ext;
-#X obj 78 205 list length;
-#X obj 28 55 list fromsymbol;
-#X obj 28 260 list split;
-#X obj 28 80 t a a;
-#X obj 60 115 list length;
-#X obj 60 230 -;
-#X obj 28 285 list tosymbol;
-#X obj 28 310 outlet;
-#X obj 78 175 list fromsymbol;
-#X connect 0 0 3 0;
-#X connect 1 0 10 0;
-#X connect 2 0 7 1;
-#X connect 3 0 5 0;
+#X connect 4 0 3 1;
 #X connect 4 0 8 0;
-#X connect 5 0 4 0;
-#X connect 5 1 6 0;
-#X connect 6 0 7 0;
-#X connect 7 0 4 1;
-#X connect 8 0 9 0;
-#X connect 10 0 2 0;
-#X restore 97 624 pd remove_ext;
-#N canvas 314 37 450 472 remove_help 0;
+#X connect 5 0 6 0;
+#X connect 6 0 10 0;
+#X connect 7 0 6 0;
+#X connect 8 0 6 0;
+#X connect 9 0 3 1;
+#X connect 10 0 11 0;
+#X connect 12 0 7 0;
+#X connect 12 1 1 0;
+#X connect 12 2 5 0;
+#X connect 12 2 9 0;
+#X connect 12 2 13 0;
+#X connect 13 0 7 1;
+#X restore 164 304 pd list_drip;
+#X text 304 65 \$0-current-libdir - current libdir being tested;
+#X obj 290 288 t a a;
+#X obj 164 369 pack s s s;
+#X text 249 369 ext current-libdir libdir;
+#X msg 164 394 list \$3/extra/\$2/*\$1;
+#N canvas 314 37 450 472 remove_help_patches 0;
 #X obj 40 14 inlet;
 #X obj 126 18 r \$0-ext;
 #X obj 126 43 sel .pd;
@@ -167,29 +224,102 @@
 #X connect 18 0 16 1;
 #X connect 19 0 20 0;
 #X connect 21 0 8 0;
-#X restore 97 594 pd remove_help;
-#X obj 513 120 s \$0-libdir;
-#X text 293 407 \$0-ext - library extension (platform specific);
-#X text 293 427 \$0-libdir - directory containing doc and extra;
-#X text 293 447 \$0-reset - reset state for each libdir;
-#X obj 197 453 r \$0-libdir;
-#X obj 77 285 t a b a b;
-#N canvas 443 86 450 557 get-creator-names 0;
+#X restore 164 453 pd remove_help_patches;
+#N canvas 0 0 450 300 remove_ext 0;
+#X obj 28 30 inlet;
+#X obj 78 150 r \$0-ext;
+#X obj 78 205 list length;
+#X obj 28 55 list fromsymbol;
+#X obj 28 260 list split;
+#X obj 28 80 t a a;
+#X obj 60 115 list length;
+#X obj 60 230 -;
+#X obj 28 285 list tosymbol;
+#X obj 28 310 outlet;
+#X obj 78 175 list fromsymbol;
+#X connect 0 0 3 0;
+#X connect 1 0 10 0;
+#X connect 2 0 7 1;
+#X connect 3 0 5 0;
+#X connect 4 0 8 0;
+#X connect 5 0 4 0;
+#X connect 5 1 6 0;
+#X connect 6 0 7 0;
+#X connect 7 0 4 1;
+#X connect 8 0 9 0;
+#X connect 10 0 2 0;
+#X restore 164 479 pd remove_ext;
+#N canvas 70 66 589 509 test_load_with_declare 0;
+#X obj 64 21 inlet;
+#N canvas 0 0 450 300 \$0-load_declare 0;
+#X restore 153 319 pd \$0-load_declare;
+#X obj 153 161 f;
+#X obj 183 161 + 1;
+#X obj 153 186 * 30;
+#X obj 153 216 pack f s;
+#X obj 153 291 s pd-\$0-load_declare;
+#X obj 306 77 t b b;
+#X msg 171 132 0;
+#X msg 338 246 clear;
+#X msg 153 246 obj 5 \$1 declare -lib \$2;
+#X obj 64 56 trigger bang bang anything;
+#X msg 64 246 clear;
+#X text 59 354 Load each object by dynamically instantiating a [declare
+-lib libname]. We must clear the subpatch afterward as well to make
+sure we don't accidentally start with some loaded libs after editing
+this patch. Since Pd doesn't have any way to unload a library this
+works.;
+#X text 111 21 load a lib;
+#X obj 306 22 r \$0-current-libdir;
+#X text 361 49 reset for each libdir;
+#X connect 0 0 11 0;
+#X connect 2 0 3 0;
+#X connect 2 0 4 0;
+#X connect 3 0 2 1;
+#X connect 4 0 5 0;
+#X connect 5 0 10 0;
+#X connect 7 0 8 0;
+#X connect 7 1 9 0;
+#X connect 8 0 2 1;
+#X connect 9 0 6 0;
+#X connect 10 0 6 0;
+#X connect 11 0 12 0;
+#X connect 11 1 2 0;
+#X connect 11 2 5 1;
+#X connect 12 0 6 0;
+#X connect 15 0 7 0;
+#X restore 164 509 pd test_load_with_declare;
+#N canvas 464 46 450 650 get-creator-names 0;
 #X obj 41 22 inlet;
-#X obj 51 356 outlet;
+#X obj 41 586 outlet;
 #X obj 141 54 r \$0-last-objectmaker-methodspace-length;
-#X obj 100 167 -;
+#X obj 41 137 -;
 #X obj 41 107 classinfo objectmaker;
 #X msg 41 82 methods;
-#X obj 51 208 until;
-#X obj 51 249 f;
-#X obj 94 249 + 1;
-#X obj 51 284 classinfo objectmaker;
-#X obj 151 181 t a;
+#X obj 41 168 until;
+#X obj 41 209 f;
+#X obj 84 209 + 1;
+#X obj 41 244 classinfo objectmaker;
+#X obj 141 137 t a;
 #X obj 41 47 bang;
-#X obj 51 309 t a a;
-#X obj 140 355 print testing;
-#X msg 123 329 \$1;
+#X obj 41 269 t a a;
+#X obj 210 241 r \$0-libdir;
+#X obj 210 296 list fromsymbol;
+#X obj 210 321 list length;
+#X obj 73 296 list split 1;
+#X obj 73 321 list fromsymbol;
+#X obj 73 356 list split;
+#X obj 179 425 select s;
+#X msg 179 450 1;
+#X obj 232 450 b;
+#X msg 232 475 0;
+#X obj 41 507 list prepend;
+#X obj 41 532 route 1;
+#X obj 41 557 list;
+#X text 110 532 filter out creators that aren't absolute paths;
+#X text 110 552 otherwise we get unmanageable namespace clashes;
+#X obj 210 271 trigger anything anything;
+#X obj 73 391 list tosymbol;
 #X connect 0 0 11 0;
 #X connect 2 0 3 1;
 #X connect 2 0 10 0;
@@ -203,110 +333,93 @@
 #X connect 9 0 12 0;
 #X connect 10 0 7 1;
 #X connect 11 0 5 0;
-#X connect 12 0 1 0;
-#X connect 12 1 14 0;
-#X connect 14 0 13 0;
-#X restore 77 686 pd get-creator-names;
-#N canvas 228 256 450 346 test-object 0;
-#X obj 86 36 inlet;
-#X text 132 34 creator_name argtype1 argtype2 etc.;
-#N canvas 150 78 649 452 right_outlet_for_aliases 0;
+#X connect 12 0 23 0;
+#X connect 12 1 16 0;
+#X connect 13 0 28 0;
+#X connect 14 0 15 0;
+#X connect 15 0 18 1;
+#X connect 16 0 17 0;
+#X connect 17 0 18 0;
+#X connect 18 0 29 0;
+#X connect 18 2 29 0;
+#X connect 19 0 20 0;
+#X connect 19 1 21 0;
+#X connect 20 0 23 1;
+#X connect 21 0 22 0;
+#X connect 22 0 23 1;
+#X connect 23 0 24 0;
+#X connect 24 0 25 0;
+#X connect 25 0 1 0;
+#X connect 28 0 14 0;
+#X connect 28 1 19 1;
+#X connect 29 0 19 0;
+#X restore 132 543 pd get-creator-names;
+#N canvas 238 135 450 346 test-object 0;
+#X obj 26 36 inlet;
+#X text 72 34 creator_name argtype1 argtype2 etc.;
+#N canvas 372 37 649 659 right_outlet_for_aliases 0;
 #X obj 70 25 inlet;
 #X obj 70 50 t a a;
 #X obj 102 78 list split 1;
-#X obj 102 103 t b a;
-#X msg 102 128 0;
-#X obj 102 183 b;
-#X msg 102 208 0;
-#X msg 162 208 1;
-#X obj 70 248 list prepend;
-#X obj 70 273 route 0 1;
-#X obj 70 358 outlet;
-#X obj 121 358 outlet;
-#X obj 102 158 classinfo;
+#X obj 135 303 t b a;
+#X msg 135 328 0;
+#X obj 135 383 b;
+#X msg 135 408 0;
+#X msg 195 408 1;
+#X obj 70 448 list prepend;
+#X obj 70 473 route 0 1;
+#X obj 70 558 outlet;
+#X obj 121 558 outlet;
+#X obj 135 358 classinfo;
+#X obj 70 498 list;
+#X obj 107 498 list;
 #X text 196 23 Check if we're a lone creator name with no corresponding
-class name. If so \, we are an alias and should skip the next class-based
-test(s) by going to the right outlet.;
-#X obj 70 298 list;
-#X obj 107 298 list;
+class name. If so \, we are an alias and should skip any class-based
+tests;
+#X obj 102 133 list fromsymbol;
+#X obj 329 89 r \$0-libdir;
+#X obj 439 87 r \$0-current-libdir;
+#X obj 290 140 symbol;
+#X obj 400 140 symbol;
+#X obj 102 103 trigger anything bang bang;
+#X obj 290 165 pack s s;
+#X msg 290 190 symbol \$1/\$2/;
+#X obj 290 215 list fromsymbol;
+#X obj 290 240 list length;
+#X obj 102 273 list split;
+#X obj 171 328 list tosymbol;
 #X connect 0 0 1 0;
 #X connect 1 0 8 0;
 #X connect 1 1 2 0;
-#X connect 2 0 3 0;
+#X connect 2 0 21 0;
 #X connect 3 0 4 0;
-#X connect 3 1 12 1;
+#X connect 3 1 27 0;
 #X connect 4 0 12 0;
 #X connect 5 0 6 0;
 #X connect 6 0 8 1;
 #X connect 7 0 8 1;
 #X connect 8 0 9 0;
-#X connect 9 0 14 0;
-#X connect 9 1 15 0;
+#X connect 9 0 13 0;
+#X connect 9 1 14 0;
 #X connect 12 0 5 0;
 #X connect 12 1 7 0;
-#X connect 14 0 10 0;
-#X connect 15 0 11 0;
-#X restore 86 61 pd right_outlet_for_aliases;
-#N canvas 182 119 522 576 namespace_collisions 0;
-#X obj 40 15 inlet;
-#X obj 60 98 list split 1;
-#X obj 60 123 t b a;
-#X msg 60 148 externdir;
-#X obj 310 63 r \$0-current-libdir-name;
-#X obj 219 63 r \$0-libdir;
-#X obj 180 108 symbol;
-#X obj 246 107 symbol;
-#X msg 180 168 symbol \$1/extra/\$2;
-#X obj 60 174 classinfo;
-#X obj 60 232 select;
-#X obj 40 40 t a a b b;
-#X msg 60 257 0;
-#X obj 98 256 b;
-#X msg 98 281 1;
-#X obj 40 321 list prepend;
-#X obj 40 346 route 0 1;
-#X obj 40 521 outlet;
-#X obj 70 457 s \$0-fail;
-#X obj 70 403 pack s s s;
-#X obj 70 377 list split 1;
-#X obj 60 199 trigger anything anything;
-#X msg 70 431 \$1: externdir mismatch: expected \$2 but got \$3;
-#X obj 180 143 pack s s;
-#X obj 40 489 list;
-#X obj 259 278 print externdir;
-#X connect 0 0 11 0;
-#X connect 1 0 2 0;
-#X connect 2 0 3 0;
-#X connect 2 1 9 1;
-#X connect 3 0 9 0;
-#X connect 4 0 7 1;
-#X connect 5 0 6 1;
-#X connect 6 0 23 0;
-#X connect 7 0 23 1;
-#X connect 8 0 10 1;
-#X connect 8 0 19 1;
-#X connect 9 0 21 0;
-#X connect 9 0 25 0;
-#X connect 10 0 12 0;
-#X connect 10 1 13 0;
-#X connect 11 0 15 0;
-#X connect 11 1 1 0;
-#X connect 11 2 6 0;
-#X connect 11 3 7 0;
-#X connect 12 0 15 1;
-#X connect 13 0 14 0;
-#X connect 14 0 15 1;
-#X connect 15 0 16 0;
-#X connect 16 0 24 0;
-#X connect 16 1 20 0;
+#X connect 13 0 10 0;
+#X connect 14 0 11 0;
+#X connect 16 0 26 0;
+#X connect 17 0 19 1;
+#X connect 18 0 20 1;
 #X connect 19 0 22 0;
-#X connect 20 0 19 0;
-#X connect 21 0 10 0;
-#X connect 21 1 19 2;
-#X connect 22 0 18 0;
-#X connect 23 0 8 0;
-#X connect 24 0 17 0;
-#X restore 17 308 pd namespace_collisions;
+#X connect 20 0 22 1;
+#X connect 21 0 16 0;
+#X connect 21 1 19 0;
+#X connect 21 2 20 0;
+#X connect 22 0 23 0;
+#X connect 23 0 24 0;
+#X connect 24 0 25 0;
+#X connect 25 0 26 1;
+#X connect 26 1 3 0;
+#X connect 27 0 12 1;
+#X restore 194 79 pd right_outlet_for_aliases;
 #N canvas 3 25 740 694 load_the_object 0;
 #X obj 22 13 inlet;
 #X obj 86 115 list split 1;
@@ -482,11 +595,11 @@ may be other oddities in external libs with regard to libdir prefixes.
 #X connect 25 1 26 0;
 #X connect 26 0 21 0;
 #X connect 26 1 1 0;
-#X restore 86 156 pd load_the_object;
+#X restore 26 156 pd load_the_object;
 #N canvas 268 243 450 346 \$0-load_the_object_subpatch 0;
-#X restore 231 157 pd \$0-load_the_object_subpatch;
-#X msg 86 241 clear;
-#X obj 86 266 s pd-\$0-load_the_object_subpatch;
+#X restore 171 157 pd \$0-load_the_object_subpatch;
+#X msg 26 241 clear;
+#X obj 26 266 s pd-\$0-load_the_object_subpatch;
 #N canvas 99 25 704 622 check_for_namespace_collisions 0;
 #X obj 42 26 inlet;
 #X obj 42 51 t a a;
@@ -579,163 +692,59 @@ nameclash is in the current library we're testing then we ignore it.
 #X connect 22 0 13 0;
 #X connect 23 0 24 1;
 #X connect 24 0 22 0;
-#X restore 86 104 pd check_for_namespace_collisions;
+#X restore 194 114 pd check_for_namespace_collisions;
+#X obj 26 61 t a a;
+#X obj 58 114 print testing;
+#X obj 58 89 list split 1;
+#X connect 0 0 8 0;
+#X connect 2 0 7 0;
+#X connect 2 1 7 0;
+#X connect 3 0 5 0;
+#X connect 5 0 6 0;
+#X connect 8 0 3 0;
+#X connect 8 1 10 0;
+#X connect 10 0 9 0;
+#X restore 132 574 pd test-object;
+#X obj 164 239 trigger bang anything anything;
+#X msg 371 263 methods;
+#X obj 371 288 classinfo objectmaker;
+#X obj 371 313 s \$0-last-objectmaker-methodspace-length;
+#X text 304 85 \$0-last-objectmaker-methodspace-length;
+#X text 304 105 \$0-ext;
+#N canvas 454 133 450 323 set_\$0-libdir 0;
+#X obj 49 48 inlet;
+#X obj 49 137 pdinfo;
+#X obj 49 78 b;
+#X msg 49 108 libdir;
+#X obj 49 198 outlet;
+#X text 97 48 get the directory where extra/ and doc/ live;
+#X obj 49 162 trigger anything anything;
+#X obj 221 198 s \$0-libdir;
 #X connect 0 0 2 0;
-#X connect 2 0 8 0;
-#X connect 2 1 8 0;
-#X connect 4 0 6 0;
-#X connect 6 0 7 0;
-#X connect 8 0 4 0;
-#X restore 77 716 pd test-object;
-#X obj 249 340 classinfo objectmaker;
-#X msg 249 315 methods;
-#X text 293 467 \$0-last-objectmaker-methodspace-length;
-#X obj 249 370 s \$0-last-objectmaker-methodspace-length;
-#X text 293 487 \$0-current-libdir-name;
-#X text 293 507 \$0-fail;
-#N canvas 245 192 382 392 drip 0;
-#X obj 67 30 inlet;
-#X obj 102 83 list length;
-#X obj 102 108 until;
-#X obj 102 163 f;
-#X obj 102 188 + 1;
-#X msg 274 263 set;
-#X msg 66 307 \$1 \, \$2 \,;
-#X obj 66 263 list;
-#X msg 102 263 adddollar \$1 \, addcomma;
-#X msg 150 126 0;
-#X obj 66 332 symbol;
-#X obj 66 357 outlet;
-#X obj 67 55 trigger anything anything bang;
-#X obj 144 224 b;
-#X connect 0 0 12 0;
-#X connect 1 0 2 0;
+#X connect 1 0 6 0;
 #X connect 2 0 3 0;
-#X connect 3 0 4 0;
-#X connect 4 0 3 1;
-#X connect 4 0 8 0;
-#X connect 5 0 6 0;
-#X connect 6 0 10 0;
-#X connect 7 0 6 0;
-#X connect 8 0 6 0;
-#X connect 9 0 3 1;
-#X connect 10 0 11 0;
-#X connect 12 0 7 0;
-#X connect 12 1 1 0;
-#X connect 12 2 5 0;
-#X connect 12 2 9 0;
-#X connect 12 2 13 0;
-#X connect 13 0 7 1;
-#X restore 77 198 pd drip;
-#N canvas 245 192 382 392 drip 0;
+#X connect 3 0 1 0;
+#X connect 6 0 4 0;
+#X connect 6 1 7 0;
+#X restore 61 66 pd set_\$0-libdir;
+#N canvas 246 217 382 392 set_\$0-current_libdir 0;
 #X obj 67 30 inlet;
-#X obj 102 83 list length;
-#X obj 102 108 until;
-#X obj 102 163 f;
-#X obj 102 188 + 1;
-#X msg 274 263 set;
-#X msg 66 307 \$1 \, \$2 \, \$3 \,;
-#X obj 66 263 list;
-#X msg 102 263 adddollar \$1 \, addcomma;
-#X msg 150 126 0;
-#X obj 66 332 symbol;
-#X obj 66 357 outlet;
-#X obj 67 55 trigger anything anything bang;
-#X obj 144 224 b;
-#X connect 0 0 12 0;
+#X obj 67 55 trigger anything anything;
+#X obj 67 80 outlet;
+#X obj 202 81 s \$0-current-libdir;
+#X connect 0 0 1 0;
 #X connect 1 0 2 0;
-#X connect 2 0 3 0;
-#X connect 3 0 4 0;
-#X connect 4 0 3 1;
-#X connect 4 0 8 0;
-#X connect 5 0 6 0;
-#X connect 6 0 10 0;
-#X connect 7 0 6 0;
-#X connect 8 0 6 0;
-#X connect 9 0 3 1;
-#X connect 10 0 11 0;
-#X connect 12 0 7 0;
-#X connect 12 1 1 0;
-#X connect 12 2 5 0;
-#X connect 12 2 9 0;
-#X connect 12 2 13 0;
-#X connect 13 0 7 1;
-#X restore 97 398 pd drip;
-#X msg 97 542 list \$3/extra/\$2/*\$1;
-#N canvas 500 53 450 404 test_path 0;
-#X obj 41 33 inlet;
-#X obj 41 138 outlet;
-#X obj 94 33 r \$0-libdir;
-#X obj 41 63 pack s s;
-#X msg 41 113 symbol \$2/extra/\$1;
-#X connect 0 0 3 0;
-#X connect 2 0 3 1;
-#X connect 3 0 4 0;
-#X connect 4 0 1 0;
-#X restore 269 569 pd test_path;
-#X obj 269 594 t a b;
-#N canvas 384 25 589 486 test_load_and_path_with_declare 0;
-#X obj 64 21 inlet;
-#N canvas 0 0 450 300 \$0-load_declare 0;
-#X restore 647 149 pd \$0-load_declare;
-#X obj 153 161 f;
-#X obj 183 161 + 1;
-#X obj 153 186 * 30;
-#X obj 153 216 pack f s;
-#X obj 153 291 s pd-\$0-load_declare;
-#X obj 596 22 inlet;
-#X obj 596 77 t b b;
-#X msg 171 132 0;
-#X msg 628 246 clear;
-#X msg 153 246 obj 5 \$1 declare -lib \$2;
-#X obj 64 56 trigger bang bang anything;
-#X msg 64 246 clear;
-#X text 59 324 Load each object by dynamically instantiating a [declare
--lib libname]. We must clear the subpatch afterward as well to make
-sure we don't accidentally start with some loaded libs after editing
-this patch. Since Pd doesn't have any way to unload a library this
-works.;
-#X obj 334 21 inlet;
-#X obj 423 161 f;
-#X obj 453 161 + 1;
-#X obj 423 186 * 30;
-#X obj 423 216 pack f s;
-#X msg 441 132 0;
-#X obj 334 56 trigger bang bang anything;
-#X msg 334 246 clear;
-#X msg 423 246 obj 5 \$1 declare -path \$2;
-#X text 111 21 load a lib;
-#X text 380 22 set a path;
-#X connect 0 0 12 0;
-#X connect 2 0 3 0;
-#X connect 2 0 4 0;
-#X connect 3 0 2 1;
-#X connect 4 0 5 0;
-#X connect 5 0 11 0;
-#X connect 7 0 8 0;
-#X connect 8 0 9 0;
-#X connect 8 0 20 0;
-#X connect 8 1 10 0;
-#X connect 9 0 2 1;
-#X connect 10 0 6 0;
-#X connect 11 0 6 0;
-#X connect 12 0 13 0;
-#X connect 12 1 2 0;
-#X connect 12 2 5 1;
-#X connect 13 0 6 0;
-#X connect 15 0 21 0;
-#X connect 16 0 17 0;
-#X connect 16 0 18 0;
-#X connect 17 0 16 1;
-#X connect 18 0 19 0;
-#X connect 19 0 23 0;
-#X connect 20 0 16 1;
-#X connect 21 0 22 0;
-#X connect 21 1 16 0;
-#X connect 21 2 19 1;
-#X connect 22 0 6 0;
-#X connect 23 0 6 0;
-#X restore 97 654 pd test_load_and_path_with_declare;
+#X connect 1 1 3 0;
+#X restore 132 184 pd set_\$0-current_libdir;
+#N canvas 0 0 450 300 set_\$0-ext 0;
+#X obj 78 44 inlet;
+#X obj 78 69 trigger anything anything;
+#X obj 78 94 outlet;
+#X obj 250 94 s \$0-ext;
+#X connect 0 0 1 0;
+#X connect 1 0 2 0;
+#X connect 1 1 3 0;
+#X restore 164 329 pd set_\$0-ext;
 #N canvas 259 121 571 514 results 0;
 #X obj 62 25 inlet;
 #X obj 235 33 r \$0-current-libdir-name;
@@ -805,74 +814,34 @@ works.;
 #X connect 29 1 30 0;
 #X connect 30 0 27 0;
 #X connect 31 0 27 0;
-#X restore 37 756 pd results;
-#X obj 249 284 s \$0-current-libdir-name;
-#X obj 77 223 trigger anything anything;
-#X obj 674 284 t a;
-#X obj 674 504 t a;
-#X msg 77 72 libdir cyclone zexy creb cxc iemlib list-abs mapping markex
-maxlib memento mjlib motex osx pddp pdogg pixeltango pmpd rradical
-sigpack smlib unauthorized vbap pan freeverb~ hcs jmmmp ext13 ggee
-iem_anything ekext hexloader disis lyonpotpourri;
-#X obj 37 44 t b b b b;
-#N canvas 319 177 550 418 libs_not_loaded_by_default 0;
-#X obj 10 11 inlet;
-#X obj 10 251 outlet;
-#X text 104 243 problems;
-#X text 104 263 iem_tab: 45 classes that refuse to create without args
-;
-#X text 104 283 tof: param class is too complex to easily give default
-args;
-#X msg 10 36 adaptive arraysize autotune~ bassemu~ bob~ boids bonk~
-bsaylor choice comport controctopus fluid~ hid iem16 iem_adaptfilt
-iem_ambi iem_bin_ambi iem_delay iemgui iemmatrix iem_roomsim iem_spec2
-iemxmlrpc jasch_lib K12 la-kitchen loop~ lrshift~ memento-p mjlib moocow
-moonlib motex mrpeach nsend pan pd~ pdcontainer pd-wavelet pique plugin~
-pmpd purepd rjlib rradical rtc sfruit sigmund~ stdout timestretch windowing
-;
-#X connect 0 0 5 0;
-#X connect 5 0 1 0;
-#X restore 57 164 pd libs_not_loaded_by_default;
-#X text 269 163 <- two libraries to go: tof and iem_tab;
-#X obj 476 290 print next_library;
-#X connect 0 0 2 0;
-#X connect 1 0 4 0;
-#X connect 2 0 14 0;
-#X connect 3 0 13 0;
-#X connect 4 0 29 0;
-#X connect 5 0 6 0;
-#X connect 5 1 8 0;
-#X connect 6 0 30 0;
-#X connect 7 0 40 0;
-#X connect 9 0 33 2;
-#X connect 11 0 10 0;
-#X connect 12 0 33 0;
-#X connect 13 0 12 0;
-#X connect 18 0 6 2;
-#X connect 18 0 3 1;
+#X restore 61 601 pd results;
+#X obj 132 209 t a a;
+#X obj 61 94 trigger bang bang bang anything;
+#X connect 0 0 24 0;
+#X connect 1 0 13 0;
+#X connect 3 0 4 0;
+#X connect 4 0 25 0;
+#X connect 5 0 6 1;
+#X connect 6 0 7 0;
+#X connect 7 0 26 0;
+#X connect 9 0 10 2;
+#X connect 9 1 1 1;
+#X connect 10 0 12 0;
+#X connect 12 0 1 0;
+#X connect 13 0 14 0;
+#X connect 14 0 15 0;
+#X connect 16 0 17 0;
+#X connect 18 0 6 0;
+#X connect 18 1 10 1;
+#X connect 18 2 19 0;
 #X connect 19 0 20 0;
-#X connect 19 1 1 0;
-#X connect 19 2 6 1;
-#X connect 19 3 10 0;
-#X connect 19 3 23 0;
 #X connect 20 0 21 0;
-#X connect 22 0 25 0;
-#X connect 23 0 22 0;
-#X connect 28 0 36 0;
-#X connect 29 0 5 0;
-#X connect 30 0 3 0;
-#X connect 31 0 32 0;
-#X connect 32 0 33 1;
-#X connect 32 1 33 2;
-#X connect 36 0 19 0;
-#X connect 36 1 35 0;
-#X connect 36 1 37 0;
-#X connect 36 1 43 0;
-#X connect 37 0 38 0;
-#X connect 38 0 31 0;
-#X connect 39 0 28 0;
-#X connect 40 0 34 0;
-#X connect 40 1 41 0;
-#X connect 40 2 39 0;
-#X connect 40 3 0 0;
-#X connect 41 0 28 0;
+#X connect 24 0 29 0;
+#X connect 25 0 28 0;
+#X connect 26 0 10 0;
+#X connect 28 0 16 0;
+#X connect 28 1 18 0;
+#X connect 29 0 27 0;
+#X connect 29 1 3 0;
+#X connect 29 2 5 0;
+#X connect 29 3 9 0;
-- 
GitLab


From 6b691aaffa4063cfbdfedcfbab9a7385b8482cfe Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jancsika@yahoo.com>
Date: Mon, 7 Aug 2017 16:37:24 -0400
Subject: [PATCH 34/98] Revert "remove nameclashing classes from non-default
 loaded abstraction libraries"

This reverts commit 86dae3417619d56c91df1f4f6f9f5875ac3bcb11.
---
 abstractions/Makefile | 37 -------------------------------------
 1 file changed, 37 deletions(-)

diff --git a/abstractions/Makefile b/abstractions/Makefile
index 8f28959ea..e1bbe3cdd 100644
--- a/abstractions/Makefile
+++ b/abstractions/Makefile
@@ -274,33 +274,6 @@ purepd:
 
 purepd_install:
 	make -C $(abstractions_src)/purepd DESTDIR="$(DESTDIR)" objectsdir="$(objectsdir)" install
-	# remove abstractions that clash with default loaded libraries
-	rm $(DESTDIR)$(objectsdir)/purepd/alternate.pd
-	rm $(DESTDIR)$(objectsdir)/purepd/alternate-help.pd
-	rm $(DESTDIR)$(objectsdir)/purepd/cosh.pd
-	rm $(DESTDIR)$(objectsdir)/purepd/cosh-help.pd
-	rm $(DESTDIR)$(objectsdir)/purepd/delta~.pd
-	rm $(DESTDIR)$(objectsdir)/purepd/delta~-help.pd
-	rm $(DESTDIR)$(objectsdir)/purepd/delta.pd
-	rm $(DESTDIR)$(objectsdir)/purepd/delta-help.pd
-	rm $(DESTDIR)$(objectsdir)/purepd/fifo.pd
-	rm $(DESTDIR)$(objectsdir)/purepd/fifo-help.pd
-	rm $(DESTDIR)$(objectsdir)/purepd/for++.pd
-	rm $(DESTDIR)$(objectsdir)/purepd/for++-help.pd
-	rm $(DESTDIR)$(objectsdir)/purepd/inv.pd
-	rm $(DESTDIR)$(objectsdir)/purepd/inv-help.pd
-	rm $(DESTDIR)$(objectsdir)/purepd/once.pd
-	rm $(DESTDIR)$(objectsdir)/purepd/once-help.pd
-	rm $(DESTDIR)$(objectsdir)/purepd/oneshot.pd
-	rm $(DESTDIR)$(objectsdir)/purepd/oneshot-help.pd
-	rm $(DESTDIR)$(objectsdir)/purepd/sgn~.pd
-	rm $(DESTDIR)$(objectsdir)/purepd/sgn~-help.pd
-	rm $(DESTDIR)$(objectsdir)/purepd/sinh.pd
-	rm $(DESTDIR)$(objectsdir)/purepd/sinh-help.pd
-	rm $(DESTDIR)$(objectsdir)/purepd/tanh.pd
-	rm $(DESTDIR)$(objectsdir)/purepd/tanh-help.pd
-	rm $(DESTDIR)$(objectsdir)/purepd/velocity.pd
-	rm $(DESTDIR)$(objectsdir)/purepd/velocity-help.pd
 
 purepd_clean:
 	make -C $(abstractions_src)/purepd clean
@@ -358,13 +331,6 @@ rtc-lib_install:
 	install -d $(DESTDIR)$(objectsdir)/$(RTC-LIB_NAME)/examples
 	install -p $(abstractions_src)/footils/rtc-lib/rtc/rtc-help/*.pd \
 		$(DESTDIR)$(objectsdir)/$(RTC-LIB_NAME)/examples
-	# remove abstractions that clash with the names of default loaded
-	# libraries
-	rm $(DESTDIR)$(objectsdir)/$(RTC-LIB_NAME)/expr_scale.pd
-	rm $(DESTDIR)$(objectsdir)/$(RTC-LIB_NAME)/inv.pd
-	rm $(DESTDIR)$(objectsdir)/$(RTC-LIB_NAME)/minus.pd
-	rm $(DESTDIR)$(objectsdir)/$(RTC-LIB_NAME)/ratio.pd
-	rm $(DESTDIR)$(objectsdir)/$(RTC-LIB_NAME)/ratio-help.pd
 
 #-------------------------------------------------------------------------------
 # sfruit
@@ -377,9 +343,6 @@ sfruit_install:
 		--author "Luke Iannini" \
 		--license "GNU GPL" \
 		--description "a large collection of assorted handy utilites"
-	# remove abstraction that has a nameclash with list-abs
-	rm $(DESTDIR)$(objectsdir)/$(SFRUIT_NAME)/list-swap.pd
-	rm $(DESTDIR)$(objectsdir)/$(SFRUIT_NAME)/list-swap-help.pd
 
 #-------------------------------------------------------------------------------
 # TIMESTRETCH
-- 
GitLab


From 744835368e039e33fefbb05057bd5fdd9b8f1bd3 Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jancsika@yahoo.com>
Date: Mon, 7 Aug 2017 16:42:23 -0400
Subject: [PATCH 35/98] Revert "remove copies of mapping library abstractions
 from la-kitchen"

This reverts commit 0fdcd2a4f0ba57d2458b1c9ce117ce1e1d425e32.

Conflicts:
	abstractions/Makefile
---
 abstractions/Makefile | 14 --------------
 1 file changed, 14 deletions(-)

diff --git a/abstractions/Makefile b/abstractions/Makefile
index e1bbe3cdd..c1ad71c72 100644
--- a/abstractions/Makefile
+++ b/abstractions/Makefile
@@ -111,20 +111,6 @@ la-kitchen_install:
 #	install -d $(DESTDIR)$(manualsdir)/$(LA-KITCHEN_NAME)
 #	install -p $(abstractions_src)/La-kitchen/doc/*.* \
 #		 $(DESTDIR)$(manualsdir)/$(LA-KITCHEN_NAME)
-	# Remove abstractions that are already in mapping.
-	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN_NAME)/amplitude_n.pd
-	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN_NAME)/amplitude_n-help.pd
-	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN_NAME)/debounce.pd
-	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN_NAME)/debounce-help.pd
-	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN_NAME)/last_n.pd
-	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN_NAME)/last_n-help.pd
-	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN_NAME)/max_n.pd
-	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN_NAME)/max_n-help.pd
-	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN_NAME)/median_3.pd
-	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN_NAME)/median_5.pd
-	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN_NAME)/median_7.pd
-	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN_NAME)/min_n.pd
-	rm $(DESTDIR)$(objectsdir)/$(LA-KITCHEN_NAME)/min_n-help.pd
 	install -p $(abstractions_src)/La-kitchen/readme.txt \
 		$(DESTDIR)$(objectsdir)/$(LA_KITCHEN_NAME)/README.txt
 
-- 
GitLab


From fcba7773bcd2d7c22cef9cd7b6c7364d2e6459ab Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jancsika@yahoo.com>
Date: Mon, 7 Aug 2017 16:44:07 -0400
Subject: [PATCH 36/98] Revert "remove "matrix~" from iemmatrix to prevent
 nameclash with cyclone/matrix~"

This reverts commit 3964dea2046433dd6a15d3f016708311ede48e46.
---
 externals/iem/iemmatrix/alias/matrix~.c | 5 +++++
 externals/iem/iemmatrix/src/mtx_mul~.c  | 2 +-
 2 files changed, 6 insertions(+), 1 deletion(-)
 create mode 100644 externals/iem/iemmatrix/alias/matrix~.c

diff --git a/externals/iem/iemmatrix/alias/matrix~.c b/externals/iem/iemmatrix/alias/matrix~.c
new file mode 100644
index 000000000..b50d1d933
--- /dev/null
+++ b/externals/iem/iemmatrix/alias/matrix~.c
@@ -0,0 +1,5 @@
+#include "../src/mtx_mul~.c"
+void matrix_tilde_setup()
+{
+  mtx_mul_tilde_setup();
+}
diff --git a/externals/iem/iemmatrix/src/mtx_mul~.c b/externals/iem/iemmatrix/src/mtx_mul~.c
index 64f31edc1..3f072f35b 100644
--- a/externals/iem/iemmatrix/src/mtx_mul~.c
+++ b/externals/iem/iemmatrix/src/mtx_mul~.c
@@ -925,7 +925,7 @@ void mtx_mul_tilde_setup(void)
   /* compatibility with tm's iem_matrix */
   class_addcreator((t_newmethod)matrix_multilde_new, gensym("matrix_mul_line~"), A_GIMME, 0);
   /* compatibility with jmz's zexy */
-  //class_addcreator((t_newmethod)matrix_multilde_new, gensym("matrix~"), A_GIMME, 0);
+  class_addcreator((t_newmethod)matrix_multilde_new, gensym("matrix~"), A_GIMME, 0);
 
 
   class_addmethod(matrix_multilde_class, (t_method)matrix_multilde_dsp, gensym("dsp"), 0);
-- 
GitLab


From bbfc2340012c18954753a11ea818564b35b6b009 Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jancsika@yahoo.com>
Date: Mon, 7 Aug 2017 16:51:17 -0400
Subject: [PATCH 37/98] revert the deletion of hid abstractions from
 f94ff9eb6c1d80d4f244706672921a77a94d96ef

---
 externals/hid/keygate-help.pd   | 46 +++++++++++++++++++++++++++
 externals/hid/keygate.pd        | 43 +++++++++++++++++++++++++
 externals/hid/notescale-help.pd | 56 +++++++++++++++++++++++++++++++++
 externals/hid/notescale.pd      | 29 +++++++++++++++++
 4 files changed, 174 insertions(+)
 create mode 100644 externals/hid/keygate-help.pd
 create mode 100644 externals/hid/keygate.pd
 create mode 100644 externals/hid/notescale-help.pd
 create mode 100644 externals/hid/notescale.pd

diff --git a/externals/hid/keygate-help.pd b/externals/hid/keygate-help.pd
new file mode 100644
index 000000000..5ed83d5a4
--- /dev/null
+++ b/externals/hid/keygate-help.pd
@@ -0,0 +1,46 @@
+#N canvas 0 31 462 494 10;
+#X obj 5 2 cnv 15 450 20 empty empty keygate 2 11 1 18 -233017 -66577
+0;
+#X obj 160 257 bng 25 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
+-1;
+#X obj 160 121 loadbang;
+#X msg 160 141 1;
+#X obj 160 169 metro 150;
+#X text 33 416 (C) Copyright 2004 Hans-Christoph Steiner <hans@eds.org>
+;
+#X text 250 430 released under the GNU GPL;
+#X obj 237 369 pddp/pddplink ../all_about_hid.pd -text all_about_hid
+;
+#X text 128 370 For more info:;
+#X text 15 207 data to be gated -->;
+#X obj 281 258 bng 25 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
+-1;
+#X obj 40 300 keyname;
+#X symbolatom 79 324 10 0 0 0 - - -;
+#X text 157 324 <-- check here for the keyname symbol;
+#X obj 160 214 keygate f;
+#X text 17 38 [keygate] is a simple gate controlled by a keyboard.
+You must specify the name of the key which controls the gate. The left
+inlet takes the data to be gated.;
+#X text 18 89 The "f" key on the any keyboard controls this gate:;
+#X text 310 263 <-- key released;
+#X text 41 264 key pressed -->;
+#X obj 422 3 pddp/pddplink http://puredata.info/dev/pddp -text pddp
+;
+#N canvas 472 31 494 344 META 0;
+#X text 12 145 HELP_PATCH_AUTHORS "pd meta" information added by Jonathan
+Wilkes for Pd version 0.42.;
+#X text 12 25 LICENSE GPL;
+#X text 12 125 AUTHOR Hans-Christoph Steiner;
+#X text 12 85 OUTLET_0 bang;
+#X text 12 105 OUTLET_1 bang;
+#X text 12 45 DESCRIPTION simple gate controlled by a keyboard;
+#X text 12 65 INLET_0 bang;
+#X text 12 5 KEYWORDS control user_input abstraction;
+#X restore 407 462 pd META;
+#X connect 2 0 3 0;
+#X connect 3 0 4 0;
+#X connect 4 0 14 0;
+#X connect 11 1 12 0;
+#X connect 14 0 1 0;
+#X connect 14 1 10 0;
diff --git a/externals/hid/keygate.pd b/externals/hid/keygate.pd
new file mode 100644
index 000000000..ca66095dc
--- /dev/null
+++ b/externals/hid/keygate.pd
@@ -0,0 +1,43 @@
+#N canvas 326 22 530 481 10;
+#X obj 44 36 inlet;
+#X obj 44 365 outlet;
+#X obj 44 334 spigot;
+#X text 109 401 (C) Copyright 2004 Hans-Christoph Steiner <hans@eds.org>
+;
+#X text 326 415 released under the GNU GPL;
+#X text 16 444 $Author: eighthave $;
+#X text 16 461 $Date: 2004-11-25 02:42:49 $;
+#X text 16 427 $Revision: 1.1 $;
+#X obj 132 26 loadbang;
+#X text 5 6 [keygate];
+#X obj 182 333 spigot;
+#X obj 182 365 outlet;
+#X obj 273 204 - 1;
+#X obj 273 224 abs;
+#X obj 236 27 keyname;
+#X msg 132 60 0;
+#X msg 183 60 1;
+#X obj 243 181 t f f;
+#X obj 243 157 f;
+#X obj 243 107 sel \$1;
+#X obj 243 86 symbol;
+#X obj 236 57 trigger bang float;
+#X connect 0 0 2 0;
+#X connect 0 0 10 0;
+#X connect 2 0 1 0;
+#X connect 8 0 15 0;
+#X connect 8 0 16 0;
+#X connect 10 0 11 0;
+#X connect 12 0 13 0;
+#X connect 13 0 10 1;
+#X connect 14 0 21 0;
+#X connect 14 1 20 1;
+#X connect 15 0 2 1;
+#X connect 16 0 10 1;
+#X connect 17 0 2 1;
+#X connect 17 1 12 0;
+#X connect 18 0 17 0;
+#X connect 19 0 18 0;
+#X connect 20 0 19 0;
+#X connect 21 0 20 0;
+#X connect 21 1 18 1;
diff --git a/externals/hid/notescale-help.pd b/externals/hid/notescale-help.pd
new file mode 100644
index 000000000..3d4d4179e
--- /dev/null
+++ b/externals/hid/notescale-help.pd
@@ -0,0 +1,56 @@
+#N canvas 0 31 464 467 10;
+#X floatatom 26 85 5 0 0 0 - - -;
+#X floatatom 26 160 0 0 0 0 - - -;
+#X obj 2 2 cnv 15 450 20 empty empty notescale 2 11 1 18 -233017 -66577
+0;
+#X obj 418 3 pddp/pddplink http://puredata.info/dev/pddp -text pddp
+;
+#X floatatom 137 266 5 0 0 0 - - -;
+#X obj 140 330 hsl 128 15 0 127 0 0 empty empty empty -2 -6 0 8 -262144
+-1 -1 0 1;
+#X text 17 393 (C) Copyright 2004 Hans-Christoph Steiner <hans@eds.org>
+;
+#X text 234 407 released under the GNU GPL;
+#X floatatom 150 160 0 0 0 0 - - -;
+#X floatatom 297 160 0 0 0 0 - - -;
+#X obj 213 83 hsl 128 15 0 1 0 0 empty empty empty -2 -6 0 8 -225271
+-1 -1 0 0;
+#X text 17 426 $Revision: 1.3 $$Date: 2006-03-17 04:58:30 $;
+#X text 18 439 $Author: eighthave $;
+#X obj 140 244 hsl 128 15 0 1 0 0 empty empty empty -2 -6 0 8 -262131
+-1 -1 0 0;
+#X obj 26 130 notescale 30 60;
+#X floatatom 137 347 5 0 0 0 - - -;
+#X text 13 193 If you use [notescale] with no arguments \, then the
+output range defaults to 0-127.;
+#X floatatom 202 109 5 0 0 0 - - -;
+#X obj 26 105 / 100;
+#X text 18 35 [notescale] scales a stream of numbers to a MIDI note
+number. It takes an input range of 0 to 1 \, and outputs MIDI note
+numbers based on an output range set as arguments.;
+#X obj 137 297 notescale;
+#X obj 150 130 notescale 15 120;
+#X obj 297 130 notescale 24 48;
+#N canvas 474 31 494 344 META 0;
+#X text 12 125 HELP_PATCH_AUTHORS "pd meta" information added by Jonathan
+Wilkes for Pd version 0.42.;
+#X text 12 25 LICENSE GPL;
+#X text 12 105 AUTHOR Hans-Christoph Steiner;
+#X text 12 45 DESCRIPTION scale a stream of numbers to a MIDI note
+number;
+#X text 12 65 INLET_0 float;
+#X text 12 85 OUTLET_0 float;
+#X text 12 5 KEYWORDS control abstraction;
+#X restore 406 435 pd META;
+#X connect 0 0 18 0;
+#X connect 4 0 20 0;
+#X connect 5 0 15 0;
+#X connect 10 0 17 0;
+#X connect 10 0 21 0;
+#X connect 10 0 22 0;
+#X connect 13 0 4 0;
+#X connect 14 0 1 0;
+#X connect 18 0 14 0;
+#X connect 20 0 5 0;
+#X connect 21 0 8 0;
+#X connect 22 0 9 0;
diff --git a/externals/hid/notescale.pd b/externals/hid/notescale.pd
new file mode 100644
index 000000000..8c6336904
--- /dev/null
+++ b/externals/hid/notescale.pd
@@ -0,0 +1,29 @@
+#N canvas 37 318 444 446 10;
+#X obj 64 49 inlet;
+#X obj 64 389 outlet;
+#X obj 64 325 int;
+#X obj 64 297 expr $f1 * ($f3 - $f2) + $f2;
+#X obj 357 231 f \$2;
+#X obj 159 230 f \$1;
+#X obj 159 257 expr if ($f1 == $f2 \, 0 \, $f1) \; if ($f1 == $f2 \,
+127 \, $f2);
+#X text 10 7 [notescale];
+#X obj 229 152 loadbang;
+#X obj 229 179 t b b;
+#X text 114 49 input range: 0 to 1;
+#X obj 64 96 min 1;
+#X obj 64 116 max 0;
+#X text 123 389 output range: MIDI note #s;
+#X connect 0 0 11 0;
+#X connect 2 0 1 0;
+#X connect 3 0 2 0;
+#X connect 4 0 6 1;
+#X connect 5 0 6 0;
+#X connect 6 0 3 1;
+#X connect 6 1 3 2;
+#X connect 8 0 9 0;
+#X connect 9 0 5 0;
+#X connect 9 1 4 0;
+#X connect 11 0 12 0;
+#X connect 12 0 3 0;
+#X connect 12 0 9 0;
-- 
GitLab


From 91a9c0616e7a7a048ab027b31d65b333a25c51ad Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jancsika@yahoo.com>
Date: Mon, 7 Aug 2017 16:52:44 -0400
Subject: [PATCH 38/98] Revert "remove duplicated abstraction from non-default
 library"

This reverts commit d47295f590ebe53606153dd2cba4687971c92950.
---
 externals/hid/buttongate-help.pd | 53 ++++++++++++++++++++++++++++++++
 externals/hid/buttongate.pd      | 42 +++++++++++++++++++++++++
 2 files changed, 95 insertions(+)
 create mode 100644 externals/hid/buttongate-help.pd
 create mode 100644 externals/hid/buttongate.pd

diff --git a/externals/hid/buttongate-help.pd b/externals/hid/buttongate-help.pd
new file mode 100644
index 000000000..6b5dc723f
--- /dev/null
+++ b/externals/hid/buttongate-help.pd
@@ -0,0 +1,53 @@
+#N canvas 0 31 463 514 10;
+#X obj 5 2 cnv 15 450 20 empty empty buttongate 2 11 1 18 -233017 -66577
+0;
+#X obj 160 287 bng 25 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
+-1;
+#X obj 160 151 loadbang;
+#X msg 160 171 1;
+#X obj 160 199 metro 150;
+#X text 27 470 (C) Copyright 2004 Hans-Christoph Steiner <hans@eds.org>
+;
+#X text 244 484 released under the GNU GPL;
+#X obj 223 417 pddp/pddplink ../all_about_hid.pd -text all_about_hid
+;
+#X text 114 418 For more info:;
+#X text 17 38 [buttongate] is a simple gate controlled by a HID button.
+You must specify the device and the button which controls the gate.
+The left inlet takes the data to be gated. The right inlet is for sending
+optional control messages to the HID.;
+#X obj 160 244 buttongate 0 btn_0;
+#X text 18 119 The first button on the first device controls this gate:
+;
+#X text 15 237 data to be gated -->;
+#X text 292 237 <-- msgs to [hid];
+#X obj 281 288 bng 25 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
+-1;
+#X msg 310 197 refresh;
+#X msg 299 176 open 2;
+#X text 39 294 button pressed->;
+#X text 310 293 <-- button released;
+#X text 23 348 Keyboard keys can also be used to control this object.
+You can get the [hid] keycode from here:;
+#X obj 324 368 ev_key-list;
+#X obj 422 3 pddp/pddplink http://puredata.info/dev/pddp -text pddp
+;
+#N canvas 504 253 494 344 META 0;
+#X text 12 165 HELP_PATCH_AUTHORS "pd meta" information added by Jonathan
+Wilkes for Pd version 0.42.;
+#X text 12 25 LICENSE GPL;
+#X text 12 145 AUTHOR Hans-Christoph Steiner;
+#X text 12 45 DESCRIPTION simple gate controlled by a HID button;
+#X text 12 65 INLET_0 bang;
+#X text 12 85 INLET_1 open refresh;
+#X text 12 105 OUTLET_0 bang;
+#X text 12 125 OUTLET_1 bang;
+#X text 12 5 KEYWORDS control user_input abstraction;
+#X restore 406 463 pd META;
+#X connect 2 0 3 0;
+#X connect 3 0 4 0;
+#X connect 4 0 10 0;
+#X connect 10 0 1 0;
+#X connect 10 1 14 0;
+#X connect 15 0 10 1;
+#X connect 16 0 10 1;
diff --git a/externals/hid/buttongate.pd b/externals/hid/buttongate.pd
new file mode 100644
index 000000000..d80feb62a
--- /dev/null
+++ b/externals/hid/buttongate.pd
@@ -0,0 +1,42 @@
+#N canvas 367 43 525 408 10;
+#X obj 303 81 hid \$1;
+#X obj 303 24 inlet;
+#X obj 303 106 route key;
+#X obj 303 127 route \$2;
+#X obj 104 26 inlet;
+#X obj 104 295 outlet;
+#X obj 104 264 spigot;
+#X text 10 324 (C) Copyright 2004 Hans-Christoph Steiner <hans@eds.org>
+;
+#X text 226 340 released under the GNU GPL;
+#X text 16 371 $Author: eighthave $;
+#X text 16 388 $Date: 2004-11-25 02:42:49 $;
+#X text 16 354 $Revision: 1.2 $;
+#X obj 192 16 loadbang;
+#X obj 303 147 unpack f f;
+#X text 5 6 [buttongate];
+#X obj 242 263 spigot;
+#X obj 242 295 outlet;
+#X obj 333 195 - 1;
+#X obj 333 215 abs;
+#X msg 192 50 0;
+#X msg 243 50 1;
+#X obj 303 168 t f f;
+#X connect 0 0 2 0;
+#X connect 1 0 0 0;
+#X connect 2 0 3 0;
+#X connect 3 0 13 0;
+#X connect 4 0 6 0;
+#X connect 4 0 15 0;
+#X connect 6 0 5 0;
+#X connect 12 0 19 0;
+#X connect 12 0 20 0;
+#X connect 13 0 21 0;
+#X connect 15 0 16 0;
+#X connect 17 0 18 0;
+#X connect 18 0 15 1;
+#X connect 19 0 6 1;
+#X connect 20 0 15 1;
+#X connect 20 0 0 0;
+#X connect 21 0 6 1;
+#X connect 21 1 17 0;
-- 
GitLab


From 8d32b7ef12e7e03659393ab0835d74fcd69e6d34 Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jancsika@yahoo.com>
Date: Mon, 7 Aug 2017 18:55:56 -0400
Subject: [PATCH 39/98] Pulled update to lyonpotpourri

---
 externals/OSCx/config.h              | 2 +-
 externals/OSCx/libOSC/Makefile       | 2 +-
 externals/OSCx/send+dump/Makefile    | 4 ++--
 externals/OSCx/src/Makefile          | 4 ++--
 externals/build/include/g_all_guis.h | 7 ++++++-
 externals/lyonpotpourri              | 2 +-
 externals/pdp/bin/pdp-config         | 2 +-
 externals/pdp/include/pdp_config.h   | 4 ++--
 8 files changed, 16 insertions(+), 11 deletions(-)

diff --git a/externals/OSCx/config.h b/externals/OSCx/config.h
index bca83e3eb..0abaeb49a 100644
--- a/externals/OSCx/config.h
+++ b/externals/OSCx/config.h
@@ -1 +1 @@
-/* config.h.  Generated by configure.  */
+/* config.h.  Generated from config.h.in by configure.  */
diff --git a/externals/OSCx/libOSC/Makefile b/externals/OSCx/libOSC/Makefile
index cea44f7e3..3b8055d4d 100644
--- a/externals/OSCx/libOSC/Makefile
+++ b/externals/OSCx/libOSC/Makefile
@@ -4,7 +4,7 @@ ARFLAGS=srv
 # DEFS= -Dunix
 LIB=libOSC.a
 
-CFLAGS=-g -O2 -DUNIX -Wall -Wimplicit -Wunused -Wmissing-prototypes -O2 -fPIC -I../libOSC -I../../pd/src -I../../../pd/src -I../src
+CFLAGS=-g -O2 -DUNIX -Wall -Wimplicit -Wunused -Wmissing-prototypes -O1 -fPIC -I../libOSC -I../../pd/src -I../../../pd/src -I../src
 INCLUDES=-I../libOSC -I../../pd/src -I../../../pd/src -I../src
 
 LIBOBJS= ${LIB}(OSC-client.o) ${LIB}(OSC-timetag.o)
diff --git a/externals/OSCx/send+dump/Makefile b/externals/OSCx/send+dump/Makefile
index 06d2c4825..a14b0d65f 100644
--- a/externals/OSCx/send+dump/Makefile
+++ b/externals/OSCx/send+dump/Makefile
@@ -1,9 +1,9 @@
-LIBS = -lc -lm
+LIBS = -L../../../pd/bin -lc -lm
 LIBOSCDIR = ../libOSC
 LIBOSC = ${LIBOSCDIR}/libOSC.a
 
 # strange bug requires this...
-CFLAGS= -g -O2 -DUNIX -Wall -Wimplicit -Wunused -Wmissing-prototypes -O2 -fPIC -I../libOSC -I../../pd/src -I../../../pd/src -I../src -I../libOSC -I../../pd/src -I../../../pd/src -I../src
+CFLAGS= -g -O2 -DUNIX -Wall -Wimplicit -Wunused -Wmissing-prototypes -O1 -fPIC -I../libOSC -I../../pd/src -I../../../pd/src -I../src -I../libOSC -I../../pd/src -I../../../pd/src -I../src
 # INCLUDES= -I../libOSC -I../../pd/src -I../../../pd/src -I../src
 
 DUMPOBJS=dumpOSC.o
diff --git a/externals/OSCx/src/Makefile b/externals/OSCx/src/Makefile
index 10856d0fa..6b5753b52 100644
--- a/externals/OSCx/src/Makefile
+++ b/externals/OSCx/src/Makefile
@@ -17,10 +17,10 @@
 
 
 EXT=o
-LIBS = -lc -lm
+LIBS = -L../../../pd/bin -lc -lm
 LIBOSC = ../libOSC/libOSC.a
 
-CFLAGS = -g -O2 -DUNIX -Wall -Wimplicit -Wunused -Wmissing-prototypes -O2 -fPIC -I../libOSC -I../../pd/src -I../../../pd/src -I../src
+CFLAGS = -g -O2 -DUNIX -Wall -Wimplicit -Wunused -Wmissing-prototypes -O1 -fPIC -I../libOSC -I../../pd/src -I../../../pd/src -I../src
 INCLUDES = -I../libOSC -I../../pd/src -I../../../pd/src -I../src
 LDFLAGS = -Wl,--export-dynamic -shared
 
diff --git a/externals/build/include/g_all_guis.h b/externals/build/include/g_all_guis.h
index 25e22f538..81549d3e1 100644
--- a/externals/build/include/g_all_guis.h
+++ b/externals/build/include/g_all_guis.h
@@ -97,6 +97,10 @@ typedef struct _iemgui
     unsigned int x_locked:1;      //  7 matches ([bng] only)
     unsigned int x_reverse:1;     //  4 matches (sliders only)
     unsigned int dummy:20;
+    int legacy_x;                 // legacy x offset
+    int legacy_y;                 // legacy y offset
+    //int click_x;                  // click getrect x offset
+    //int click_y;                  // click getrect y offset
 } t_iemgui;
 
 typedef struct _bng
@@ -180,7 +184,7 @@ typedef struct _my_numbox
     double   x_k;
     int      x_lin0_log1; // bool
     char     x_buf[IEMGUI_MAX_NUM_LEN];
-    int      x_numwidth; // unsigned
+    int      x_numwidth; // unsigned (width in pixels)
     int      x_scalewidth;  /* temporary value for scalehandle */
     int      x_scaleheight; /* temporary value for scalehandle */
     int      x_tmpfontsize; /* temporary value for scalehandle */
@@ -280,3 +284,4 @@ EXTERN void iemgui_out_bang(t_iemgui *x, int o, int chk_putin);
 EXTERN void iemgui_out_float(t_iemgui *x, int o, int chk_putin, t_float f);
 EXTERN void iemgui_out_list(t_iemgui *x, int o, int chk_putin, t_symbol *s, int argc, t_atom *argv);
 
+EXTERN int sys_legacy; // found in s_main.c, used for legacy iemgui positioning 
diff --git a/externals/lyonpotpourri b/externals/lyonpotpourri
index 9e77f0697..c9906dbf7 160000
--- a/externals/lyonpotpourri
+++ b/externals/lyonpotpourri
@@ -1 +1 @@
-Subproject commit 9e77f069796d278ecf26780555b3ce2bf1549fff
+Subproject commit c9906dbf784f170892afc751da352ebd8f7f7d42
diff --git a/externals/pdp/bin/pdp-config b/externals/pdp/bin/pdp-config
index 1e8420330..c8605657a 100644
--- a/externals/pdp/bin/pdp-config
+++ b/externals/pdp/bin/pdp-config
@@ -1,6 +1,6 @@
 #!/bin/sh
 
-prefix=/usr/local
+prefix=/Users/mbarb/build/purr-data/pd
 version=0.12.7
 
 usage="\
diff --git a/externals/pdp/include/pdp_config.h b/externals/pdp/include/pdp_config.h
index 08ac30d13..583bcb9cf 100644
--- a/externals/pdp/include/pdp_config.h
+++ b/externals/pdp/include/pdp_config.h
@@ -35,7 +35,7 @@
 #define HAVE_PDP_QT 1
 
 /* build pdp_sdl */
-#define HAVE_PDP_SDL 1
+/* #undef HAVE_PDP_SDL */
 
 /* build pdp_v4l */
 #define HAVE_PDP_V4L 1
@@ -44,7 +44,7 @@
 #define HAVE_PDP_X 1
 
 /* build pdp_xv */
-#define HAVE_PDP_XV 1
+/* #undef HAVE_PDP_XV */
 
 /* enable forced pwc v4l support */
 /* #undef HAVE_PWCV4L */
-- 
GitLab


From 00c319085ccd147d0c56335bffd7fab6ce01657b Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jancsika@yahoo.com>
Date: Mon, 7 Aug 2017 19:37:58 -0400
Subject: [PATCH 40/98] add a check for the total number of objects tested, and
 fail if we don't hit the goal

---
 scripts/external-tests.pd | 71 +++++++++++++++++++++++++--------------
 1 file changed, 46 insertions(+), 25 deletions(-)

diff --git a/scripts/external-tests.pd b/scripts/external-tests.pd
index 07ea528f8..3f113fae4 100644
--- a/scripts/external-tests.pd
+++ b/scripts/external-tests.pd
@@ -1,4 +1,4 @@
-#N canvas 1 25 659 646 12;
+#N canvas 4 53 659 639 12;
 #X obj 61 34 loadbang;
 #N canvas 107 123 756 233 load_hcs/folder_list 0;
 #X obj 357 47 inlet;
@@ -354,7 +354,7 @@ works.;
 #X connect 28 1 19 1;
 #X connect 29 0 19 0;
 #X restore 132 543 pd get-creator-names;
-#N canvas 238 135 450 346 test-object 0;
+#N canvas 239 157 450 346 test-object 0;
 #X obj 26 36 inlet;
 #X text 72 34 creator_name argtype1 argtype2 etc.;
 #N canvas 372 37 649 659 right_outlet_for_aliases 0;
@@ -693,17 +693,19 @@ nameclash is in the current library we're testing then we ignore it.
 #X connect 23 0 24 1;
 #X connect 24 0 22 0;
 #X restore 194 114 pd check_for_namespace_collisions;
-#X obj 26 61 t a a;
-#X obj 58 114 print testing;
-#X obj 58 89 list split 1;
-#X connect 0 0 8 0;
+#X obj 49 128 print testing;
+#X obj 49 103 list split 1;
+#X obj 26 61 t a a b;
+#X obj 96 69 s \$0-object-test;
+#X connect 0 0 10 0;
 #X connect 2 0 7 0;
 #X connect 2 1 7 0;
 #X connect 3 0 5 0;
 #X connect 5 0 6 0;
-#X connect 8 0 3 0;
-#X connect 8 1 10 0;
-#X connect 10 0 9 0;
+#X connect 9 0 8 0;
+#X connect 10 0 3 0;
+#X connect 10 1 9 0;
+#X connect 10 2 11 0;
 #X restore 132 574 pd test-object;
 #X obj 164 239 trigger bang anything anything;
 #X msg 371 263 methods;
@@ -745,7 +747,7 @@ nameclash is in the current library we're testing then we ignore it.
 #X connect 1 0 2 0;
 #X connect 1 1 3 0;
 #X restore 164 329 pd set_\$0-ext;
-#N canvas 259 121 571 514 results 0;
+#N canvas 243 98 571 514 results 0;
 #X obj 62 25 inlet;
 #X obj 235 33 r \$0-current-libdir-name;
 #X obj 146 33 r \$0-fail;
@@ -761,23 +763,32 @@ nameclash is in the current library we're testing then we ignore it.
 #X msg 94 327 gui;
 #X obj 94 352 pdinfo;
 #X obj 62 384 list prepend;
-#X msg 180 389 all tests succeeded!;
-#X obj 180 414 print info;
+#X msg 180 419 all tests succeeded!;
+#X obj 180 444 print info;
 #X obj 180 324 sel 0 1;
-#X msg 343 389 1 test failed;
-#X msg 356 359 \$1 tests failed;
+#X msg 343 419 1 test failed;
+#X msg 356 389 \$1 tests failed;
 #X obj 62 410 route 0;
 #X obj 62 435 != 0;
 #X obj 62 485 s pd;
 #X msg 62 460 quit \$1;
-#X obj 343 414 print error;
+#X obj 343 444 print error;
 #X obj 146 112 list prepend add;
 #X obj 146 137 list trim;
 #X obj 146 162 textfile;
-#X obj 62 283 t a b a b;
 #X obj 79 60 t b b;
 #X msg 22 123 rewind;
 #X obj 22 83 until;
+#X obj 62 283 t a b a b b;
+#X obj 335 194 bang;
+#X obj 335 237 f;
+#X obj 414 157 f;
+#X obj 414 182 + 1;
+#X obj 414 125 r \$0-object-test;
+#X obj 402 292 print total_objects_tested;
+#X obj 335 262 moses 2407;
+#X msg 335 320 didn't count 2407 objects;
+#X obj 335 345 s \$0-fail;
 #X connect 0 0 11 0;
 #X connect 1 0 4 0;
 #X connect 2 0 3 0;
@@ -789,7 +800,7 @@ nameclash is in the current library we're testing then we ignore it.
 #X connect 9 0 8 1;
 #X connect 9 0 10 0;
 #X connect 9 0 11 1;
-#X connect 11 0 28 0;
+#X connect 11 0 31 0;
 #X connect 12 0 13 0;
 #X connect 13 0 14 1;
 #X connect 14 0 20 0;
@@ -805,15 +816,25 @@ nameclash is in the current library we're testing then we ignore it.
 #X connect 25 0 26 0;
 #X connect 26 0 27 0;
 #X connect 27 0 5 0;
-#X connect 27 1 31 1;
-#X connect 28 0 14 0;
-#X connect 28 1 12 0;
-#X connect 28 2 17 0;
-#X connect 28 3 29 0;
-#X connect 29 0 31 0;
-#X connect 29 1 30 0;
+#X connect 27 1 30 1;
+#X connect 28 0 30 0;
+#X connect 28 1 29 0;
+#X connect 29 0 27 0;
 #X connect 30 0 27 0;
-#X connect 31 0 27 0;
+#X connect 31 0 14 0;
+#X connect 31 1 12 0;
+#X connect 31 2 17 0;
+#X connect 31 3 28 0;
+#X connect 31 4 32 0;
+#X connect 32 0 33 0;
+#X connect 33 0 38 0;
+#X connect 34 0 35 0;
+#X connect 35 0 34 1;
+#X connect 35 0 33 1;
+#X connect 36 0 34 0;
+#X connect 38 0 39 0;
+#X connect 38 1 37 0;
+#X connect 39 0 40 0;
 #X restore 61 601 pd results;
 #X obj 132 209 t a a;
 #X obj 61 94 trigger bang bang bang anything;
-- 
GitLab


From da9d0e79bcdbfaa396a1a5d27ddf99029f677565 Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jancsika@yahoo.com>
Date: Mon, 7 Aug 2017 21:30:32 -0400
Subject: [PATCH 41/98] try using the test in each runner, and suppressing
 printing the name of each object being tested

---
 .gitlab-ci.yml            | 27 ++++++++-------------------
 scripts/external-tests.pd |  5 ++---
 2 files changed, 10 insertions(+), 22 deletions(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 8f3eb83b1..ec4c0ca49 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -11,7 +11,7 @@ debian_stable_i386_deb:
      - ./tar_em_up.sh -B
      - cd ..
      - echo "" | sudo -S DEBIAN_FRONTEND=noninteractive dpkg --force-all -i pd-l2ork*.deb > /dev/null
-     - pd-l2ork -nogui -nrt -noaudio scripts/load_all_binaries.pd
+     - pd-l2ork -noprefs -nostdpath -nogui -nrt -noaudio scripts/load_all_binaries.pd
    artifacts:
      expire_in: 1 day
      paths:
@@ -30,7 +30,7 @@ debian_stable_amd64_deb:
      - ./tar_em_up.sh -B
      - cd ..
      - echo "" | sudo -S DEBIAN_FRONTEND=noninteractive dpkg --force-all -i pd-l2ork*.deb > /dev/null
-     - pd-l2ork -nogui -nrt -noaudio scripts/load_all_binaries.pd
+     - pd-l2ork -noprefs -nostdpath -nogui -nrt -noaudio scripts/load_all_binaries.pd
    artifacts:
      expire_in: 1 day
      paths:
@@ -49,7 +49,7 @@ ubuntu_14.04_i386_deb:
      - ./tar_em_up.sh -B
      - cd ..
      - echo "" | sudo -S DEBIAN_FRONTEND=noninteractive dpkg --force-all -i pd-l2ork*.deb > /dev/null
-     - pd-l2ork -nogui -nrt -noaudio scripts/load_all_binaries.pd
+     - pd-l2ork -noprefs -nostdpath -nogui -nrt -noaudio scripts/load_all_binaries.pd
    artifacts:
      expire_in: 1 day
      paths:
@@ -68,7 +68,7 @@ ubuntu_14.04_amd64_deb:
      - ./tar_em_up.sh -B
      - cd ..
      - echo "" | sudo -S DEBIAN_FRONTEND=noninteractive dpkg --force-all -i pd-l2ork*.deb > /dev/null
-     - pd-l2ork -nogui -nrt -noaudio scripts/load_all_binaries.pd
+     - pd-l2ork -noprefs -nostdpath -nogui -nrt -noaudio scripts/load_all_binaries.pd
    artifacts:
      expire_in: 1 day
      paths:
@@ -87,7 +87,7 @@ ubuntu_16.04_amd64_deb:
      - ./tar_em_up.sh -B
      - cd ..
      - echo "" | sudo -S DEBIAN_FRONTEND=noninteractive dpkg --force-all -i pd-l2ork*.deb > /dev/null
-     - pd-l2ork -nogui -nrt -noaudio scripts/load_all_binaries.pd
+     - pd-l2ork -noprefs -nostdpath -nogui -nrt -noaudio scripts/load_all_binaries.pd
    artifacts:
      expire_in: 1 day
      paths:
@@ -102,6 +102,7 @@ osx_amd64_dmg:
      - echo `pwd`
      - cd l2ork_addons
      - ./tar_em_up.sh -X
+     - ../packages/darwin_app/build/*.app/Contents/Resources/app.nw/bin/pd-l2ork -noprefs -nostdpath -nogui -nrt -noaudio scripts/load_all_binaries.pd
    artifacts:
      expire_in: 1 day
      paths:
@@ -116,25 +117,12 @@ osx_10.8_amd64_dmg:
      - echo `pwd`
      - cd l2ork_addons
      - osx_version=10.8 ./tar_em_up.sh -X
+     - ../packages/darwin_app/build/*.app/Contents/Resources/app.nw/bin/pd-l2ork -noprefs -nostdpath -nogui -nrt -noaudio scripts/load_all_binaries.pd
    artifacts:
      expire_in: 1 day
      paths:
        - Pd*.dmg
 
-debian_stable_arm_deb:
-   tags:
-     - debian
-     - arm 
-     - stable
-   script:
-     - echo `pwd`
-     - cd l2ork_addons
-     - ./tar_em_up.sh -r
-   artifacts:
-     expire_in: 1 day
-     paths:
-       - pd*.deb
-
 windows_i386_installer:
   tags:
     - windows
@@ -143,6 +131,7 @@ windows_i386_installer:
     - echo `pwd`
     - cd l2ork_addons
     - ./tar_em_up.sh -Z
+     - ../packages/win32_inno/build/bin/pd.exe -noprefs -nostdpath -nogui -nrt -noaudio scripts/load_all_binaries.pd
   artifacts:
     expire_in: 1 day
     paths:
diff --git a/scripts/external-tests.pd b/scripts/external-tests.pd
index 3f113fae4..4b22fce61 100644
--- a/scripts/external-tests.pd
+++ b/scripts/external-tests.pd
@@ -1,4 +1,4 @@
-#N canvas 4 53 659 639 12;
+#N canvas 5 53 659 639 12;
 #X obj 61 34 loadbang;
 #N canvas 107 123 756 233 load_hcs/folder_list 0;
 #X obj 357 47 inlet;
@@ -354,7 +354,7 @@ works.;
 #X connect 28 1 19 1;
 #X connect 29 0 19 0;
 #X restore 132 543 pd get-creator-names;
-#N canvas 239 157 450 346 test-object 0;
+#N canvas 240 179 450 346 test-object 0;
 #X obj 26 36 inlet;
 #X text 72 34 creator_name argtype1 argtype2 etc.;
 #N canvas 372 37 649 659 right_outlet_for_aliases 0;
@@ -704,7 +704,6 @@ nameclash is in the current library we're testing then we ignore it.
 #X connect 5 0 6 0;
 #X connect 9 0 8 0;
 #X connect 10 0 3 0;
-#X connect 10 1 9 0;
 #X connect 10 2 11 0;
 #X restore 132 574 pd test-object;
 #X obj 164 239 trigger bang anything anything;
-- 
GitLab


From 468ba19d672bd89eb8c88eb68966a5192ffb4c3f Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jancsika@yahoo.com>
Date: Mon, 7 Aug 2017 22:50:27 -0400
Subject: [PATCH 42/98] use "external-tests.pd" instead of
 "load_all_binaries.pd"

---
 .gitlab-ci.yml | 16 ++++++++--------
 1 file changed, 8 insertions(+), 8 deletions(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index ec4c0ca49..c07407d35 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -11,7 +11,7 @@ debian_stable_i386_deb:
      - ./tar_em_up.sh -B
      - cd ..
      - echo "" | sudo -S DEBIAN_FRONTEND=noninteractive dpkg --force-all -i pd-l2ork*.deb > /dev/null
-     - pd-l2ork -noprefs -nostdpath -nogui -nrt -noaudio scripts/load_all_binaries.pd
+     - pd-l2ork -noprefs -nostdpath -nogui -nrt -noaudio scripts/external-tests.pd
    artifacts:
      expire_in: 1 day
      paths:
@@ -30,7 +30,7 @@ debian_stable_amd64_deb:
      - ./tar_em_up.sh -B
      - cd ..
      - echo "" | sudo -S DEBIAN_FRONTEND=noninteractive dpkg --force-all -i pd-l2ork*.deb > /dev/null
-     - pd-l2ork -noprefs -nostdpath -nogui -nrt -noaudio scripts/load_all_binaries.pd
+     - pd-l2ork -noprefs -nostdpath -nogui -nrt -noaudio scripts/external-tests.pd
    artifacts:
      expire_in: 1 day
      paths:
@@ -49,7 +49,7 @@ ubuntu_14.04_i386_deb:
      - ./tar_em_up.sh -B
      - cd ..
      - echo "" | sudo -S DEBIAN_FRONTEND=noninteractive dpkg --force-all -i pd-l2ork*.deb > /dev/null
-     - pd-l2ork -noprefs -nostdpath -nogui -nrt -noaudio scripts/load_all_binaries.pd
+     - pd-l2ork -noprefs -nostdpath -nogui -nrt -noaudio scripts/external-tests.pd
    artifacts:
      expire_in: 1 day
      paths:
@@ -68,7 +68,7 @@ ubuntu_14.04_amd64_deb:
      - ./tar_em_up.sh -B
      - cd ..
      - echo "" | sudo -S DEBIAN_FRONTEND=noninteractive dpkg --force-all -i pd-l2ork*.deb > /dev/null
-     - pd-l2ork -noprefs -nostdpath -nogui -nrt -noaudio scripts/load_all_binaries.pd
+     - pd-l2ork -noprefs -nostdpath -nogui -nrt -noaudio scripts/external-tests.pd
    artifacts:
      expire_in: 1 day
      paths:
@@ -87,7 +87,7 @@ ubuntu_16.04_amd64_deb:
      - ./tar_em_up.sh -B
      - cd ..
      - echo "" | sudo -S DEBIAN_FRONTEND=noninteractive dpkg --force-all -i pd-l2ork*.deb > /dev/null
-     - pd-l2ork -noprefs -nostdpath -nogui -nrt -noaudio scripts/load_all_binaries.pd
+     - pd-l2ork -noprefs -nostdpath -nogui -nrt -noaudio scripts/external-tests.pd
    artifacts:
      expire_in: 1 day
      paths:
@@ -102,7 +102,7 @@ osx_amd64_dmg:
      - echo `pwd`
      - cd l2ork_addons
      - ./tar_em_up.sh -X
-     - ../packages/darwin_app/build/*.app/Contents/Resources/app.nw/bin/pd-l2ork -noprefs -nostdpath -nogui -nrt -noaudio scripts/load_all_binaries.pd
+     - ../packages/darwin_app/build/*.app/Contents/Resources/app.nw/bin/pd-l2ork -noprefs -nostdpath -nogui -nrt -noaudio scripts/external-tests.pd
    artifacts:
      expire_in: 1 day
      paths:
@@ -117,7 +117,7 @@ osx_10.8_amd64_dmg:
      - echo `pwd`
      - cd l2ork_addons
      - osx_version=10.8 ./tar_em_up.sh -X
-     - ../packages/darwin_app/build/*.app/Contents/Resources/app.nw/bin/pd-l2ork -noprefs -nostdpath -nogui -nrt -noaudio scripts/load_all_binaries.pd
+     - ../packages/darwin_app/build/*.app/Contents/Resources/app.nw/bin/pd-l2ork -noprefs -nostdpath -nogui -nrt -noaudio scripts/external-tests.pd
    artifacts:
      expire_in: 1 day
      paths:
@@ -131,7 +131,7 @@ windows_i386_installer:
     - echo `pwd`
     - cd l2ork_addons
     - ./tar_em_up.sh -Z
-     - ../packages/win32_inno/build/bin/pd.exe -noprefs -nostdpath -nogui -nrt -noaudio scripts/load_all_binaries.pd
+     - ../packages/win32_inno/build/bin/pd.exe -noprefs -nostdpath -nogui -nrt -noaudio scripts/external-tests.pd
   artifacts:
     expire_in: 1 day
     paths:
-- 
GitLab


From 3cceee16d6248f0e05d8d8ace73210ba26185c3c Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jancsika@yahoo.com>
Date: Tue, 8 Aug 2017 19:09:24 -0400
Subject: [PATCH 43/98] Remove "-nrt" flag for Windows and OSX runners

---
 .gitlab-ci.yml | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index c07407d35..f45ae628d 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -102,7 +102,7 @@ osx_amd64_dmg:
      - echo `pwd`
      - cd l2ork_addons
      - ./tar_em_up.sh -X
-     - ../packages/darwin_app/build/*.app/Contents/Resources/app.nw/bin/pd-l2ork -noprefs -nostdpath -nogui -nrt -noaudio scripts/external-tests.pd
+     - ../packages/darwin_app/build/*.app/Contents/Resources/app.nw/bin/pd-l2ork -noprefs -nostdpath -nogui -noaudio scripts/external-tests.pd
    artifacts:
      expire_in: 1 day
      paths:
@@ -117,7 +117,7 @@ osx_10.8_amd64_dmg:
      - echo `pwd`
      - cd l2ork_addons
      - osx_version=10.8 ./tar_em_up.sh -X
-     - ../packages/darwin_app/build/*.app/Contents/Resources/app.nw/bin/pd-l2ork -noprefs -nostdpath -nogui -nrt -noaudio scripts/external-tests.pd
+     - ../packages/darwin_app/build/*.app/Contents/Resources/app.nw/bin/pd-l2ork -noprefs -nostdpath -nogui -noaudio scripts/external-tests.pd
    artifacts:
      expire_in: 1 day
      paths:
@@ -131,7 +131,7 @@ windows_i386_installer:
     - echo `pwd`
     - cd l2ork_addons
     - ./tar_em_up.sh -Z
-     - ../packages/win32_inno/build/bin/pd.exe -noprefs -nostdpath -nogui -nrt -noaudio scripts/external-tests.pd
+     - ../packages/win32_inno/build/bin/pd.exe -noprefs -nostdpath -nogui -noaudio scripts/external-tests.pd
   artifacts:
     expire_in: 1 day
     paths:
-- 
GitLab


From 47299d154994d8caf80818e7c21873dcfb62ad18 Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jancsika@yahoo.com>
Date: Tue, 8 Aug 2017 21:15:36 -0400
Subject: [PATCH 44/98] use a better error message for not meeting quota,
 actually fail if object count isn't met

---
 scripts/external-tests.pd | 72 ++++++++++++++++++++-------------------
 1 file changed, 37 insertions(+), 35 deletions(-)

diff --git a/scripts/external-tests.pd b/scripts/external-tests.pd
index 4b22fce61..b834a47a8 100644
--- a/scripts/external-tests.pd
+++ b/scripts/external-tests.pd
@@ -1,4 +1,4 @@
-#N canvas 5 53 659 639 12;
+#N canvas 1 53 659 639 12;
 #X obj 61 34 loadbang;
 #N canvas 107 123 756 233 load_hcs/folder_list 0;
 #X obj 357 47 inlet;
@@ -746,7 +746,7 @@ nameclash is in the current library we're testing then we ignore it.
 #X connect 1 0 2 0;
 #X connect 1 1 3 0;
 #X restore 164 329 pd set_\$0-ext;
-#N canvas 243 98 571 514 results 0;
+#N canvas 67 78 672 572 results 0;
 #X obj 62 25 inlet;
 #X obj 235 33 r \$0-current-libdir-name;
 #X obj 146 33 r \$0-fail;
@@ -757,28 +757,27 @@ nameclash is in the current library we're testing then we ignore it.
 #X obj 156 214 b;
 #X obj 156 239 f;
 #X obj 196 239 + 1;
-#X floatatom 196 276 5 0 0 0 failures - -, f 5;
-#X obj 62 258 f;
-#X msg 94 327 gui;
-#X obj 94 352 pdinfo;
-#X obj 62 384 list prepend;
-#X msg 180 419 all tests succeeded!;
-#X obj 180 444 print info;
-#X obj 180 324 sel 0 1;
+#X floatatom 196 316 5 0 0 0 failures - -, f 5;
+#X obj 63 298 f;
+#X msg 95 367 gui;
+#X obj 95 392 pdinfo;
+#X obj 63 424 list prepend;
+#X msg 180 459 all tests succeeded!;
+#X obj 180 484 print info;
+#X obj 180 364 sel 0 1;
 #X msg 343 419 1 test failed;
 #X msg 356 389 \$1 tests failed;
-#X obj 62 410 route 0;
-#X obj 62 435 != 0;
-#X obj 62 485 s pd;
-#X msg 62 460 quit \$1;
+#X obj 63 450 route 0;
+#X obj 63 475 != 0;
+#X obj 63 525 s pd;
+#X msg 63 500 quit \$1;
 #X obj 343 444 print error;
 #X obj 146 112 list prepend add;
 #X obj 146 137 list trim;
 #X obj 146 162 textfile;
-#X obj 79 60 t b b;
-#X msg 22 123 rewind;
-#X obj 22 83 until;
-#X obj 62 283 t a b a b b;
+#X obj 79 90 t b b;
+#X msg 22 153 rewind;
+#X obj 22 113 until;
 #X obj 335 194 bang;
 #X obj 335 237 f;
 #X obj 414 157 f;
@@ -786,9 +785,11 @@ nameclash is in the current library we're testing then we ignore it.
 #X obj 414 125 r \$0-object-test;
 #X obj 402 292 print total_objects_tested;
 #X obj 335 262 moses 2407;
-#X msg 335 320 didn't count 2407 objects;
 #X obj 335 345 s \$0-fail;
-#X connect 0 0 11 0;
+#X obj 63 212 t b b b;
+#X obj 63 323 t a b a;
+#X msg 335 320 only counted \$1 objects. Need 2407 to succeed;
+#X connect 0 0 39 0;
 #X connect 1 0 4 0;
 #X connect 2 0 3 0;
 #X connect 2 0 7 0;
@@ -799,7 +800,7 @@ nameclash is in the current library we're testing then we ignore it.
 #X connect 9 0 8 1;
 #X connect 9 0 10 0;
 #X connect 9 0 11 1;
-#X connect 11 0 31 0;
+#X connect 11 0 40 0;
 #X connect 12 0 13 0;
 #X connect 13 0 14 1;
 #X connect 14 0 20 0;
@@ -820,20 +821,21 @@ nameclash is in the current library we're testing then we ignore it.
 #X connect 28 1 29 0;
 #X connect 29 0 27 0;
 #X connect 30 0 27 0;
-#X connect 31 0 14 0;
-#X connect 31 1 12 0;
-#X connect 31 2 17 0;
-#X connect 31 3 28 0;
-#X connect 31 4 32 0;
-#X connect 32 0 33 0;
-#X connect 33 0 38 0;
-#X connect 34 0 35 0;
-#X connect 35 0 34 1;
-#X connect 35 0 33 1;
-#X connect 36 0 34 0;
-#X connect 38 0 39 0;
-#X connect 38 1 37 0;
-#X connect 39 0 40 0;
+#X connect 31 0 32 0;
+#X connect 32 0 37 0;
+#X connect 33 0 34 0;
+#X connect 34 0 33 1;
+#X connect 34 0 32 1;
+#X connect 35 0 33 0;
+#X connect 37 0 41 0;
+#X connect 37 1 36 0;
+#X connect 39 0 11 0;
+#X connect 39 1 28 0;
+#X connect 39 2 31 0;
+#X connect 40 0 14 0;
+#X connect 40 1 12 0;
+#X connect 40 2 17 0;
+#X connect 41 0 38 0;
 #X restore 61 601 pd results;
 #X obj 132 209 t a a;
 #X obj 61 94 trigger bang bang bang anything;
-- 
GitLab


From dea2e3a71478007518b0e1619f479baa01a14ae1 Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jancsika@yahoo.com>
Date: Tue, 8 Aug 2017 21:53:20 -0400
Subject: [PATCH 45/98] correct paths for external tests on OSX and Windows

---
 .gitlab-ci.yml | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index f45ae628d..5491288b9 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -102,7 +102,7 @@ osx_amd64_dmg:
      - echo `pwd`
      - cd l2ork_addons
      - ./tar_em_up.sh -X
-     - ../packages/darwin_app/build/*.app/Contents/Resources/app.nw/bin/pd-l2ork -noprefs -nostdpath -nogui -noaudio scripts/external-tests.pd
+     - ../packages/darwin_app/build/*.app/Contents/Resources/app.nw/bin/pd-l2ork -noprefs -nostdpath -nogui -noaudio ../scripts/external-tests.pd
    artifacts:
      expire_in: 1 day
      paths:
@@ -117,7 +117,7 @@ osx_10.8_amd64_dmg:
      - echo `pwd`
      - cd l2ork_addons
      - osx_version=10.8 ./tar_em_up.sh -X
-     - ../packages/darwin_app/build/*.app/Contents/Resources/app.nw/bin/pd-l2ork -noprefs -nostdpath -nogui -noaudio scripts/external-tests.pd
+     - ../packages/darwin_app/build/*.app/Contents/Resources/app.nw/bin/pd-l2ork -noprefs -nostdpath -nogui -noaudio ../scripts/external-tests.pd
    artifacts:
      expire_in: 1 day
      paths:
@@ -131,7 +131,7 @@ windows_i386_installer:
     - echo `pwd`
     - cd l2ork_addons
     - ./tar_em_up.sh -Z
-     - ../packages/win32_inno/build/bin/pd.exe -noprefs -nostdpath -nogui -noaudio scripts/external-tests.pd
+     - ../packages/win32_inno/build/bin/pd.exe -noprefs -nostdpath -nogui -noaudio ../scripts/external-tests.pd
   artifacts:
     expire_in: 1 day
     paths:
-- 
GitLab


From 354b855311c9b78ee915a31e6b848334ab1e5053 Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jancsika@yahoo.com>
Date: Tue, 8 Aug 2017 23:07:15 -0400
Subject: [PATCH 46/98] lower the object threshold by two

---
 scripts/external-tests.pd | 32 ++++++++++++++++----------------
 1 file changed, 16 insertions(+), 16 deletions(-)

diff --git a/scripts/external-tests.pd b/scripts/external-tests.pd
index b834a47a8..45b9bc1af 100644
--- a/scripts/external-tests.pd
+++ b/scripts/external-tests.pd
@@ -1,4 +1,4 @@
-#N canvas 1 53 659 639 12;
+#N canvas 2 53 659 639 12;
 #X obj 61 34 loadbang;
 #N canvas 107 123 756 233 load_hcs/folder_list 0;
 #X obj 357 47 inlet;
@@ -746,7 +746,7 @@ nameclash is in the current library we're testing then we ignore it.
 #X connect 1 0 2 0;
 #X connect 1 1 3 0;
 #X restore 164 329 pd set_\$0-ext;
-#N canvas 67 78 672 572 results 0;
+#N canvas 35 53 672 572 results 0;
 #X obj 62 25 inlet;
 #X obj 235 33 r \$0-current-libdir-name;
 #X obj 146 33 r \$0-fail;
@@ -784,12 +784,12 @@ nameclash is in the current library we're testing then we ignore it.
 #X obj 414 182 + 1;
 #X obj 414 125 r \$0-object-test;
 #X obj 402 292 print total_objects_tested;
-#X obj 335 262 moses 2407;
 #X obj 335 345 s \$0-fail;
 #X obj 63 212 t b b b;
 #X obj 63 323 t a b a;
-#X msg 335 320 only counted \$1 objects. Need 2407 to succeed;
-#X connect 0 0 39 0;
+#X obj 335 262 moses 2405;
+#X msg 335 320 only counted \$1 objects. Need 2405 to succeed;
+#X connect 0 0 38 0;
 #X connect 1 0 4 0;
 #X connect 2 0 3 0;
 #X connect 2 0 7 0;
@@ -800,7 +800,7 @@ nameclash is in the current library we're testing then we ignore it.
 #X connect 9 0 8 1;
 #X connect 9 0 10 0;
 #X connect 9 0 11 1;
-#X connect 11 0 40 0;
+#X connect 11 0 39 0;
 #X connect 12 0 13 0;
 #X connect 13 0 14 1;
 #X connect 14 0 20 0;
@@ -822,20 +822,20 @@ nameclash is in the current library we're testing then we ignore it.
 #X connect 29 0 27 0;
 #X connect 30 0 27 0;
 #X connect 31 0 32 0;
-#X connect 32 0 37 0;
+#X connect 32 0 40 0;
 #X connect 33 0 34 0;
 #X connect 34 0 33 1;
 #X connect 34 0 32 1;
 #X connect 35 0 33 0;
-#X connect 37 0 41 0;
-#X connect 37 1 36 0;
-#X connect 39 0 11 0;
-#X connect 39 1 28 0;
-#X connect 39 2 31 0;
-#X connect 40 0 14 0;
-#X connect 40 1 12 0;
-#X connect 40 2 17 0;
-#X connect 41 0 38 0;
+#X connect 38 0 11 0;
+#X connect 38 1 28 0;
+#X connect 38 2 31 0;
+#X connect 39 0 14 0;
+#X connect 39 1 12 0;
+#X connect 39 2 17 0;
+#X connect 40 0 41 0;
+#X connect 40 1 36 0;
+#X connect 41 0 37 0;
 #X restore 61 601 pd results;
 #X obj 132 209 t a a;
 #X obj 61 94 trigger bang bang bang anything;
-- 
GitLab


From 678afdb6e462f0d6e5609c7a6d959b6dc88db43d Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jancsika@yahoo.com>
Date: Wed, 9 Aug 2017 22:40:48 -0400
Subject: [PATCH 47/98] throw some `valgrind` at the ubuntu segfault

---
 .gitlab-ci.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 5491288b9..0f971bfd5 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -49,7 +49,7 @@ ubuntu_14.04_i386_deb:
      - ./tar_em_up.sh -B
      - cd ..
      - echo "" | sudo -S DEBIAN_FRONTEND=noninteractive dpkg --force-all -i pd-l2ork*.deb > /dev/null
-     - pd-l2ork -noprefs -nostdpath -nogui -nrt -noaudio scripts/external-tests.pd
+     - valgrind pd-l2ork -noprefs -nostdpath -nogui -nrt -noaudio scripts/external-tests.pd
    artifacts:
      expire_in: 1 day
      paths:
-- 
GitLab


From 5198379a8a7bc3323b7b96de647da67ab5cae571 Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Thu, 10 Aug 2017 12:20:03 -0400
Subject: [PATCH 48/98] bump lyonpotpourri to head to fix missing object name
 argument

---
 externals/lyonpotpourri | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/externals/lyonpotpourri b/externals/lyonpotpourri
index c9906dbf7..52319ac32 160000
--- a/externals/lyonpotpourri
+++ b/externals/lyonpotpourri
@@ -1 +1 @@
-Subproject commit c9906dbf784f170892afc751da352ebd8f7f7d42
+Subproject commit 52319ac32801440e82a9212859b882210098f1c3
-- 
GitLab


From a7372eeb0b86a53eb671c3bcd571b24c537cd961 Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Thu, 10 Aug 2017 12:30:41 -0400
Subject: [PATCH 49/98] fix arg setter

---
 externals/miXed/cyclone/sickle/matrix.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/externals/miXed/cyclone/sickle/matrix.c b/externals/miXed/cyclone/sickle/matrix.c
index 8dcea78f1..df8f471c4 100644
--- a/externals/miXed/cyclone/sickle/matrix.c
+++ b/externals/miXed/cyclone/sickle/matrix.c
@@ -494,8 +494,8 @@ static void *matrix_new(t_symbol *s, int ac, t_atom *av)
         post("matrix~: warning: no arguments supplied: picking sane "
              "defaults [matrix~ 1 1 0]");
         SETFLOAT(sane_defaults, 1.);
-        SETFLOAT(sane_defaults, 1.);
-        SETFLOAT(sane_defaults, 0.);
+        SETFLOAT(sane_defaults+1, 1.);
+        SETFLOAT(sane_defaults+2, 0.);
         ac = 3;
         av = sane_defaults;
     }
-- 
GitLab


From 9f9c835e6818463273536760b5de2bfc0d60d546 Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Thu, 10 Aug 2017 12:57:23 -0400
Subject: [PATCH 50/98] prevent reading uninitialized values when no args are
 supplied

---
 externals/zexy/src/lpt.c        | 2 +-
 externals/zexy/src/multiline~.c | 3 +++
 2 files changed, 4 insertions(+), 1 deletion(-)

diff --git a/externals/zexy/src/lpt.c b/externals/zexy/src/lpt.c
index ae87cfba9..809d7181e 100644
--- a/externals/zexy/src/lpt.c
+++ b/externals/zexy/src/lpt.c
@@ -165,7 +165,7 @@ static void lpt_bang(t_lpt *x)
 static void *lpt_new(t_symbol *s, int argc, t_atom *argv)
 {
   t_lpt *x = (t_lpt *)pd_new(lpt_class);
-  char*devname=atom_getsymbol(argv)->s_name;
+  char*devname = argc ? atom_getsymbol(argv)->s_name : &s_;
   if(s==gensym("lp")) {
     error("lpt: the use of 'lp' has been deprecated; use 'lpt' instead");
   }
diff --git a/externals/zexy/src/multiline~.c b/externals/zexy/src/multiline~.c
index 584bb4ad4..7982c2329 100644
--- a/externals/zexy/src/multiline~.c
+++ b/externals/zexy/src/multiline~.c
@@ -233,9 +233,12 @@ static void *mline_new(t_symbol* UNUSED(s), int argc, t_atom *argv)
 {
   t_mline *x = (t_mline *)pd_new(mline_class);
   int i;
+  t_atom sane_default[1];
 
   if (!argc) {
     argc = 1;
+    SETFLOAT(sane_default, 0.);
+    argv = sane_default;
     x->time = 0;
   } else {
     x->time = atom_getfloat(argv+argc-1);
-- 
GitLab


From 223c422b68a8c646adc2b70b1c00c8bed25c8bdd Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Thu, 10 Aug 2017 13:12:39 -0400
Subject: [PATCH 51/98] prevent a buffer overflow

---
 externals/iemlib/iemlib1/src/vcf_filter~.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/externals/iemlib/iemlib1/src/vcf_filter~.c b/externals/iemlib/iemlib1/src/vcf_filter~.c
index 0990b0ae8..f4a78f5da 100644
--- a/externals/iemlib/iemlib1/src/vcf_filter~.c
+++ b/externals/iemlib/iemlib1/src/vcf_filter~.c
@@ -321,7 +321,8 @@ static void *vcf_filter_tilde_new(t_symbol *filt_typ)
   x->x_wn1 = 0.0;
   x->x_wn2 = 0.0;
   c = (char *)filt_typ->s_name;
-  c[5] = 0;
+  if (strlen(c) > 5)
+    c[5] = 0;
   strcpy(x->x_filtname, c);
   return(x);
 }
-- 
GitLab


From 8d80f47c8c3cac91b68f12e8a2597757cc040a14 Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Thu, 10 Aug 2017 13:22:22 -0400
Subject: [PATCH 52/98] prevent invalid read

---
 externals/motex/polygate~.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/externals/motex/polygate~.c b/externals/motex/polygate~.c
index d47f09f1e..6e4a99351 100644
--- a/externals/motex/polygate~.c
+++ b/externals/motex/polygate~.c
@@ -104,7 +104,7 @@ static void *polygate_new(t_symbol *s, int argc, t_atom *argv)
 	    x->fadetype = x->lastfadetype = LINEAR;
 	  }
     }
-  else
+  else if (!usedefault)
     {
       if(argv[1].a_w.w_float >= EPMIN)
 	x->fadetype = x->lastfadetype = EPOWER;
-- 
GitLab


From e294b129b81ba519a848ec875e446d94d73c14f7 Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Thu, 10 Aug 2017 13:30:53 -0400
Subject: [PATCH 53/98] fix invalid read when no args are supplied

---
 externals/zexy/src/strcmp.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/externals/zexy/src/strcmp.c b/externals/zexy/src/strcmp.c
index 69fe95357..2d9f8ce93 100644
--- a/externals/zexy/src/strcmp.c
+++ b/externals/zexy/src/strcmp.c
@@ -79,7 +79,7 @@ static void list2binbuf(t_binbuf**bbuf, int *n, char**str, int argc,
   i=*n;
   s=*str;
 
-  if(' '==s[i]) {
+  if(s && ' '==s[i]) {
     s[i]=0;
   }
 }
-- 
GitLab


From 5fd4f7be24c6d2fa862f08080ef9ddfcb075dadd Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Thu, 10 Aug 2017 14:05:06 -0400
Subject: [PATCH 54/98] don't dereference struct fields before they get
 initialized

---
 externals/sigpack/harmgen~.c | 22 +++++++++++-----------
 1 file changed, 11 insertions(+), 11 deletions(-)

diff --git a/externals/sigpack/harmgen~.c b/externals/sigpack/harmgen~.c
index 47c66ae9e..a33d71b41 100644
--- a/externals/sigpack/harmgen~.c
+++ b/externals/sigpack/harmgen~.c
@@ -38,17 +38,6 @@ typedef struct _harmgen_tilde
 static void *harmgen_tilde_new(t_floatarg mag1, t_floatarg mag2, t_floatarg mag3, t_floatarg mag4, t_floatarg mag5, t_floatarg mag6, t_floatarg mag7, t_floatarg mag8, t_floatarg mag9, t_floatarg mag10)
 {
     t_harmgen_tilde *x = (t_harmgen_tilde *)pd_new(harmgen_tilde_class);
-    outlet_new(&x->x_obj, gensym("signal"));
-	floatinlet_new(&x->x_obj, &x->x_mag1);
-	floatinlet_new(&x->x_obj, &x->x_mag2);
-	floatinlet_new(&x->x_obj, &x->x_mag3);
-	floatinlet_new(&x->x_obj, &x->x_mag4);
-	floatinlet_new(&x->x_obj, &x->x_mag5);
-	floatinlet_new(&x->x_obj, &x->x_mag6);
-	floatinlet_new(&x->x_obj, &x->x_mag7);
-	floatinlet_new(&x->x_obj, &x->x_mag8);
-	floatinlet_new(&x->x_obj, &x->x_mag9);
-	floatinlet_new(&x->x_obj, &x->x_mag10);
 	x->x_f = 0;
 	if(mag1) x->x_mag1 = mag1;
 	else x->x_mag1 = 1;
@@ -70,6 +59,17 @@ static void *harmgen_tilde_new(t_floatarg mag1, t_floatarg mag2, t_floatarg mag3
 	else x->x_mag9 = 1;
 	if(mag10) x->x_mag10 = mag10;
 	else x->x_mag10 = 1;
+    outlet_new(&x->x_obj, gensym("signal"));
+	floatinlet_new(&x->x_obj, &x->x_mag1);
+	floatinlet_new(&x->x_obj, &x->x_mag2);
+	floatinlet_new(&x->x_obj, &x->x_mag3);
+	floatinlet_new(&x->x_obj, &x->x_mag4);
+	floatinlet_new(&x->x_obj, &x->x_mag5);
+	floatinlet_new(&x->x_obj, &x->x_mag6);
+	floatinlet_new(&x->x_obj, &x->x_mag7);
+	floatinlet_new(&x->x_obj, &x->x_mag8);
+	floatinlet_new(&x->x_obj, &x->x_mag9);
+	floatinlet_new(&x->x_obj, &x->x_mag10);
     return (x);
 }
 
-- 
GitLab


From 96403cfc2271b33bf27542357444319a4bb9eac4 Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Thu, 10 Aug 2017 14:11:34 -0400
Subject: [PATCH 55/98] check for argc before dereferencing

---
 externals/vbap/define_loudspeakers.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/externals/vbap/define_loudspeakers.c b/externals/vbap/define_loudspeakers.c
index 16c5b62bc..57eec1fe7 100644
--- a/externals/vbap/define_loudspeakers.c
+++ b/externals/vbap/define_loudspeakers.c
@@ -215,7 +215,7 @@ static void initContent_ls_directions(t_def_ls *x,int ac,Atom*av)
 /*	if (av[0].a_type == A_LONG) d = av[0].a_w.w_long;
 	else */
     
-    if(av[0].a_type == A_FLOAT) d = (long)av[0].a_w.w_float;
+    if(ac && av[0].a_type == A_FLOAT) d = (long)av[0].a_w.w_float;
 	else { error("define-loudspeakers: dimension NaN"); return; }
 
 	if (d==2 || d==3)
-- 
GitLab


From 2316e4cbdfdfcddac79a5f4736843c4015649305 Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Thu, 10 Aug 2017 14:29:21 -0400
Subject: [PATCH 56/98] remove extra arg from constructor

---
 externals/ekext/maskxor.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/externals/ekext/maskxor.c b/externals/ekext/maskxor.c
index bf14560cb..4522cded3 100644
--- a/externals/ekext/maskxor.c
+++ b/externals/ekext/maskxor.c
@@ -177,7 +177,7 @@ void maskxor_print(t_maskxor *x)
   post("mode = %f, lengthl = %d, lengthr = %d, lengthm = %d",x->mode,x->lengthl,x->lengthr,x->lengthm);
 }
 
-void *maskxor_new(t_symbol *s, t_floatarg fmode)
+void *maskxor_new(t_floatarg fmode)
 {
   int i;
   t_maskxor *x = (t_maskxor *)pd_new(maskxor_class);
-- 
GitLab


From 9b981acc46631a1d51953dcee3913461fe800a46 Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Fri, 11 Aug 2017 21:41:14 -0400
Subject: [PATCH 57/98] fix more invalid reads

---
 externals/ggee/filters/hlshelf.c | 20 +++++++++++---------
 externals/mrpeach/str/str.c      |  4 ++--
 2 files changed, 13 insertions(+), 11 deletions(-)

diff --git a/externals/ggee/filters/hlshelf.c b/externals/ggee/filters/hlshelf.c
index 7cf99c59c..511f7e616 100644
--- a/externals/ggee/filters/hlshelf.c
+++ b/externals/ggee/filters/hlshelf.c
@@ -177,15 +177,17 @@ void hlshelf_float(t_hlshelf *x,t_floatarg f)
 static void *hlshelf_new(t_symbol* s,t_int argc, t_atom* at)
 {
     t_hlshelf *x = (t_hlshelf *)pd_new(hlshelf_class);
-    t_float k0 = atom_getfloat(at);
-    t_float k1 = atom_getfloat(at+1);
-    t_float k2 = atom_getfloat(at+2);
-    t_float f1 = atom_getfloat(at+3);
-    t_float f2 = atom_getfloat(at+4);
-
-
-    f1 = atom_getfloat(at);
-    f2 = atom_getfloat(at);
+    t_float k0 = argc ? atom_getfloatarg(0, argc--, at++) : 0;
+    t_float k1 = argc ? atom_getfloatarg(0, argc--, at++) : 0;
+    t_float k2 = argc ? atom_getfloatarg(0, argc--, at++) : 0;
+    t_float f1 = argc ? atom_getfloatarg(0, argc--, at++) : 0;
+    t_float f2 = argc ? atom_getfloatarg(0, argc--, at++) : 0;
+
+    /* For some reason f1 and f2 got set to the original value
+       of at[0] below. Not sure why. Anyway, I just set them to
+       k0 which should be functionally equivalent. */
+    f1 = k0;
+    f2 = k0;
 
     if ((f1 == 0.0f && f2 == 0.0f) || f1 > f2){ /* all gains = 0db */
 	 f1 = 150.0f;	
diff --git a/externals/mrpeach/str/str.c b/externals/mrpeach/str/str.c
index 0e4d7e957..00b969598 100644
--- a/externals/mrpeach/str/str.c
+++ b/externals/mrpeach/str/str.c
@@ -35,7 +35,7 @@ static void *str_new(t_symbol *s, int argc, t_atom *argv)
 
 void str_setup(void)
 {
-    str_class = class_new(gensym("str"), (t_newmethod)str_new, 0, sizeof(t_str), 0, 0);
+    str_class = class_new(gensym("str"), (t_newmethod)str_new, 0, sizeof(t_str), 0, A_GIMME, 0);
 }
 #else //ifndef PD_BLOBS
 /* Make a _real_ str object: */
@@ -687,7 +687,7 @@ static void *str_new(t_symbol *s, int argc, t_atom *argv)
     x->x_function = 0; /* default = string */
     x->x_nsplit = 0L;
     next = 0; /* index of next argument */
-    if (argv[0].a_type == A_SYMBOL)
+    if (argc && argv[0].a_type == A_SYMBOL)
     { /* the first argument may be a selector */
         atom_string(&argv[0], (char *)x->x_buf.s_data, MAXPDSTRING);
         for (i = 0; i < n_functions; ++i)
-- 
GitLab


From d6cfcc7befced088f860f82816a54cdbb7a590ee Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Fri, 11 Aug 2017 22:51:30 -0400
Subject: [PATCH 58/98] fix invalid reads in iemmatrix

---
 externals/iem/iemmatrix/src/mtx_bessel.c              | 4 ++--
 externals/iem/iemmatrix/src/mtx_eig.c                 | 2 +-
 externals/iem/iemmatrix/src/mtx_ei~.c                 | 7 +++++++
 externals/iem/iemmatrix/src/mtx_spherical_harmonics.c | 2 +-
 externals/iem/iemmatrix/src/mtx_spherical_radial.c    | 4 ++--
 5 files changed, 13 insertions(+), 6 deletions(-)

diff --git a/externals/iem/iemmatrix/src/mtx_bessel.c b/externals/iem/iemmatrix/src/mtx_bessel.c
index 458100cc1..8d61c367d 100644
--- a/externals/iem/iemmatrix/src/mtx_bessel.c
+++ b/externals/iem/iemmatrix/src/mtx_bessel.c
@@ -83,7 +83,7 @@ static void *newMTXBessel (t_symbol *s, int argc, t_atom *argv)
   x->h_re = 0; 
   x->h_im = 0; 
   x->l=0;
-  fsym=atom_getsymbol(argv);
+  fsym= argc ? atom_getsymbol(argv) : &s_;
   if (fsym->s_name!=0)
      whichfunction=fsym->s_name[0];
   switch (whichfunction) {
@@ -96,7 +96,7 @@ static void *newMTXBessel (t_symbol *s, int argc, t_atom *argv)
      case 'Y':
         x->list_h_im_out = outlet_new (&x->x_obj, gensym("matrix"));
   }
-  nmax=(int) atom_getfloat(argv+1);
+  nmax= argc > 1 ? (int) atom_getfloat(argv+1) : 0;
   if (nmax<0)
      nmax=0;
   x->nmax=nmax;
diff --git a/externals/iem/iemmatrix/src/mtx_eig.c b/externals/iem/iemmatrix/src/mtx_eig.c
index 1ab90c96f..e9474f0aa 100644
--- a/externals/iem/iemmatrix/src/mtx_eig.c
+++ b/externals/iem/iemmatrix/src/mtx_eig.c
@@ -114,7 +114,7 @@ static void *newMTXEig (t_symbol *s, int argc, t_atom *argv)
   
   x->list_l_out_re = outlet_new (&x->x_obj, gensym("list"));
   x->list_l_out_im = outlet_new (&x->x_obj, gensym("list"));
-  if (atom_getsymbol(argv)==gensym("v")) {
+  if (argc && atom_getsymbol(argv)==gensym("v")) {
      x->withevs=1;
      x->list_q_out_re = outlet_new (&x->x_obj, gensym("matrix"));
      x->list_q_out_im = outlet_new (&x->x_obj, gensym("matrix"));
diff --git a/externals/iem/iemmatrix/src/mtx_ei~.c b/externals/iem/iemmatrix/src/mtx_ei~.c
index e461bf269..5f8f7f22b 100755
--- a/externals/iem/iemmatrix/src/mtx_ei~.c
+++ b/externals/iem/iemmatrix/src/mtx_ei~.c
@@ -22,6 +22,7 @@ void *newMtxEITilde(t_symbol *s, int argc, t_atom *argv)
 {
    int sd=1;
    int sg=1;
+   t_atom sane_defaults[1];
    mtx_ei_tilde *x = (mtx_ei_tilde*) pd_new(mtx_ei_tilde_class);
    x->sig_in_left=0;
    x->sig_in_right=0;
@@ -32,6 +33,12 @@ void *newMtxEITilde(t_symbol *s, int argc, t_atom *argv)
    inlet_new(&x->x_obj, &x->x_obj.ob_pd, &s_signal, &s_signal);
    x->message_outlet=(t_outlet*)outlet_new(&x->x_obj,&s_list);
 
+   /* Prevent an invalid read */
+   if (!argc) {
+      SETFLOAT(sane_defaults, 0.);
+      argv = sane_defaults; 
+      argc = 1;
+   }
    if (argc > 2) {
       sd = atom_getint(argv++);
       sg = argc-1;
diff --git a/externals/iem/iemmatrix/src/mtx_spherical_harmonics.c b/externals/iem/iemmatrix/src/mtx_spherical_harmonics.c
index 8ecc9a4b9..72b22bb30 100644
--- a/externals/iem/iemmatrix/src/mtx_spherical_harmonics.c
+++ b/externals/iem/iemmatrix/src/mtx_spherical_harmonics.c
@@ -83,7 +83,7 @@ static void *newMTXSh (t_symbol *s, int argc, t_atom *argv)
   x->theta = 0; 
   x->ws = 0; 
   x->l=0;
-  nmax=(int) atom_getfloat(argv);
+  nmax= argc ? (int) atom_getfloat(argv) : 0;
   if (nmax<0)
      nmax=0;
   x->nmax=nmax;
diff --git a/externals/iem/iemmatrix/src/mtx_spherical_radial.c b/externals/iem/iemmatrix/src/mtx_spherical_radial.c
index 9f3fd6d66..703914e10 100644
--- a/externals/iem/iemmatrix/src/mtx_spherical_radial.c
+++ b/externals/iem/iemmatrix/src/mtx_spherical_radial.c
@@ -80,7 +80,7 @@ static void *newMTXSph (t_symbol *s, int argc, t_atom *argv)
   x->h_re = 0; 
   x->h_im = 0; 
   x->l=0;
-  fsym=atom_getsymbol(argv);
+  fsym= argc ? atom_getsymbol(argv) : &s_;
   if (fsym->s_name!=0)
      whichfunction=fsym->s_name[0];
   switch (whichfunction) {
@@ -93,7 +93,7 @@ static void *newMTXSph (t_symbol *s, int argc, t_atom *argv)
      case 'y':
         x->list_h_im_out = outlet_new (&x->x_obj, gensym("matrix"));
   }
-  nmax=(int) atom_getfloat(argv+1);
+  nmax= argc > 1 ? (int) atom_getfloat(argv+1) : 0;
   if (nmax<0)
      nmax=0;
   x->nmax=nmax;
-- 
GitLab


From cfcdec290160e6c20a2636f0fee9ad148e7336b6 Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Sat, 12 Aug 2017 18:46:55 -0400
Subject: [PATCH 59/98] fix harmgen interface to use proper A_GIMME args

---
 externals/sigpack/harmgen~.c | 44 +++++++++++++++++++-----------------
 1 file changed, 23 insertions(+), 21 deletions(-)

diff --git a/externals/sigpack/harmgen~.c b/externals/sigpack/harmgen~.c
index a33d71b41..6dca5cf37 100644
--- a/externals/sigpack/harmgen~.c
+++ b/externals/sigpack/harmgen~.c
@@ -35,30 +35,32 @@ typedef struct _harmgen_tilde
 	float x_f;
 } t_harmgen_tilde;
 
-static void *harmgen_tilde_new(t_floatarg mag1, t_floatarg mag2, t_floatarg mag3, t_floatarg mag4, t_floatarg mag5, t_floatarg mag6, t_floatarg mag7, t_floatarg mag8, t_floatarg mag9, t_floatarg mag10)
+static void *harmgen_tilde_new(t_symbol *s, int argc, t_atom *argv)
 {
+    t_sample mag1 = 1, mag2 = 1, mag3 = 1, mag4 = 1, mag5 = 1,
+             mag6 = 1, mag7 = 1, mag8 = 1, mag9 = 1, mag10 = 1;
     t_harmgen_tilde *x = (t_harmgen_tilde *)pd_new(harmgen_tilde_class);
 	x->x_f = 0;
-	if(mag1) x->x_mag1 = mag1;
-	else x->x_mag1 = 1;
-	if(mag2) x->x_mag2 = mag2;
-	else x->x_mag2 = 1;
-	if(mag3) x->x_mag3 = mag3;
-	else x->x_mag3 = 1;
-	if(mag4) x->x_mag4 = mag4;
-	else x->x_mag4 = 1;
-	if(mag5) x->x_mag5 = mag5;
-	else x->x_mag5 = 1;
-	if(mag6) x->x_mag6 = mag6;
-	else x->x_mag6 = 1;
-	if(mag7) x->x_mag7 = mag7;
-	else x->x_mag7 = 1;
-	if(mag8) x->x_mag8 = mag8;
-	else x->x_mag8 = 1;
-	if(mag9) x->x_mag9 = mag9;
-	else x->x_mag9 = 1;
-	if(mag10) x->x_mag10 = mag10;
-	else x->x_mag10 = 1;
+	if(argc > 0) mag1 = (t_sample)atom_getfloatarg(0, argc, argv);
+	x->x_mag1 = mag1 ? mag1 : 1;
+	if(argc > 1) mag2 = (t_sample)atom_getfloatarg(1, argc, argv);
+	x->x_mag2 = mag2 ? mag2 : 1;
+	if(argc > 2) mag3 = (t_sample)atom_getfloatarg(2, argc, argv);
+	x->x_mag3 = mag3 ? mag3 : 1;
+	if(argc > 3) mag4 = (t_sample)atom_getfloatarg(3, argc, argv);
+	x->x_mag4 = mag4 ? mag4 : 1;
+	if(argc > 4) mag5 = (t_sample)atom_getfloatarg(4, argc, argv);
+	x->x_mag5 = mag5 ? mag5 : 1;
+	if(argc > 5) mag6 = (t_sample)atom_getfloatarg(5, argc, argv);
+	x->x_mag6 = mag6 ? mag6 : 1;
+	if(argc > 6) mag7 = (t_sample)atom_getfloatarg(6, argc, argv);
+	x->x_mag7 = mag7 ? mag7 : 1;
+	if(argc > 7) mag8 = (t_sample)atom_getfloatarg(7, argc, argv);
+	x->x_mag8 = mag8 ? mag8 : 1;
+	if(argc > 8) mag9 = (t_sample)atom_getfloatarg(8, argc, argv);
+	x->x_mag9 = mag9 ? mag9 : 1;
+	if(argc > 9) mag10 = (t_sample)atom_getfloatarg(9, argc, argv);
+	x->x_mag10 = mag10 ? mag10 : 1;
     outlet_new(&x->x_obj, gensym("signal"));
 	floatinlet_new(&x->x_obj, &x->x_mag1);
 	floatinlet_new(&x->x_obj, &x->x_mag2);
-- 
GitLab


From 3cf58d708caaf1df93dae1786764087e6fd8ccff Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Sat, 12 Aug 2017 21:09:35 -0400
Subject: [PATCH 60/98] fix buffer overflow

---
 externals/zexy/src/strcmp.c | 11 +++++------
 1 file changed, 5 insertions(+), 6 deletions(-)

diff --git a/externals/zexy/src/strcmp.c b/externals/zexy/src/strcmp.c
index 2d9f8ce93..721917778 100644
--- a/externals/zexy/src/strcmp.c
+++ b/externals/zexy/src/strcmp.c
@@ -75,13 +75,12 @@ static void list2binbuf(t_binbuf**bbuf, int *n, char**str, int argc,
 
   binbuf_clear(*bbuf);
   binbuf_add(*bbuf, argc, argv);
-  binbuf_gettext(*bbuf, str, n);
-  i=*n;
-  s=*str;
+  binbuf_gettext(*bbuf, str, &i);
 
-  if(s && ' '==s[i]) {
-    s[i]=0;
-  }
+  s = t_resizebytes(*str, i, i+1);
+  s[i] = 0;
+  *str = s;
+  *n = i+1;
 }
 
 static void strcmp_list(t_strcmp *x, t_symbol* UNUSED(s), int argc,
-- 
GitLab


From a3744864522c94e8ed87af04544399ae6589e6bf Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Sat, 12 Aug 2017 23:21:08 -0400
Subject: [PATCH 61/98] check for empty symbol instead of NULL symbol arg,
 remove unnecessary static global init

---
 externals/plugin~/plugin~.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/externals/plugin~/plugin~.c b/externals/plugin~/plugin~.c
index 7d79915f8..03f808444 100644
--- a/externals/plugin~/plugin~.c
+++ b/externals/plugin~/plugin~.c
@@ -59,7 +59,7 @@ static void plugin_tilde_poplocale (void) {}
 
 static int plugin_tilde_have_plugin(Pd_Plugin_Tilde* x);
 
-static t_class* plugin_tilde_class = NULL;
+static t_class* plugin_tilde_class;
 
 void plugin_tilde_setup (void)
 {
@@ -109,7 +109,7 @@ static void* plugin_tilde_new (t_symbol* s_name, t_symbol* s_lib_name)
   x->dsp_vec_length = 0;
   x->dsp_active = 0;
 
-  if (s_name->s_name != NULL) {
+  if (s_name != &s_) {
     if (s_lib_name->s_name == NULL || strlen (s_lib_name->s_name) == 0)
       x->plugin_library_filename = plugin_tilde_search_plugin (x, s_name->s_name);
     else
-- 
GitLab


From 4cdad4d6fbb8cd1ae86fe9b9893b3a2b2ed3062a Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Sun, 13 Aug 2017 14:52:43 -0400
Subject: [PATCH 62/98] use a workaround for getting a normalized libdir path
 on OSX

---
 scripts/external-tests.pd | 57 +++++++++++++++++++++++++++++++++------
 1 file changed, 49 insertions(+), 8 deletions(-)

diff --git a/scripts/external-tests.pd b/scripts/external-tests.pd
index 45b9bc1af..cc20b4c5f 100644
--- a/scripts/external-tests.pd
+++ b/scripts/external-tests.pd
@@ -1,4 +1,4 @@
-#N canvas 2 53 659 639 12;
+#N canvas 3 53 659 639 12;
 #X obj 61 34 loadbang;
 #N canvas 107 123 756 233 load_hcs/folder_list 0;
 #X obj 357 47 inlet;
@@ -712,21 +712,62 @@ nameclash is in the current library we're testing then we ignore it.
 #X obj 371 313 s \$0-last-objectmaker-methodspace-length;
 #X text 304 85 \$0-last-objectmaker-methodspace-length;
 #X text 304 105 \$0-ext;
-#N canvas 454 133 450 323 set_\$0-libdir 0;
+#N canvas 1 53 554 595 set_\$0-libdir 0;
 #X obj 49 48 inlet;
-#X obj 49 137 pdinfo;
+#X obj 49 317 pdinfo;
 #X obj 49 78 b;
-#X msg 49 108 libdir;
-#X obj 49 198 outlet;
+#X msg 49 288 libdir;
+#X obj 49 567 outlet;
 #X text 97 48 get the directory where extra/ and doc/ live;
-#X obj 49 162 trigger anything anything;
-#X obj 221 198 s \$0-libdir;
+#X obj 49 541 trigger anything anything;
+#X obj 221 567 s \$0-libdir;
+#X obj 49 131 pdinfo;
+#X msg 49 106 platform;
+#X obj 49 156 select darwin;
+#X msg 49 181 1;
+#X obj 137 181 b;
+#X msg 137 206 0;
+#X obj 49 246 select 0 1;
+#X text 171 160 Unfortunately Pd on OSX has a bug that causes the;
+#X text 171 180 libdir to not be normalized-- e.g. \, it can have;
+#X text 171 200 "foo/../bar" within the path. This breaks our;
+#X text 171 220 attempt to create objects with absolute paths. So;
+#X text 171 240 we instead use the Pd executable dir and shave off
+;
+#X text 171 260 the "/bin" at the end...;
+#X obj 119 317 pdinfo;
+#X msg 119 288 libdir;
+#X obj 119 342 list fromsymbol;
+#X obj 119 367 t a a;
+#X obj 151 398 list length;
+#X obj 151 423 - 3;
+#X obj 119 452 list split;
+#X obj 119 477 list tosymbol;
+#X text 245 414 <- filter out "/ b i n";
 #X connect 0 0 2 0;
 #X connect 1 0 6 0;
-#X connect 2 0 3 0;
+#X connect 2 0 9 0;
 #X connect 3 0 1 0;
 #X connect 6 0 4 0;
 #X connect 6 1 7 0;
+#X connect 8 0 10 0;
+#X connect 9 0 8 0;
+#X connect 10 0 11 0;
+#X connect 10 1 12 0;
+#X connect 11 0 14 0;
+#X connect 12 0 13 0;
+#X connect 13 0 14 0;
+#X connect 14 0 3 0;
+#X connect 14 1 22 0;
+#X connect 21 0 23 0;
+#X connect 22 0 21 0;
+#X connect 23 0 24 0;
+#X connect 24 0 27 0;
+#X connect 24 1 25 0;
+#X connect 25 0 26 0;
+#X connect 26 0 27 1;
+#X connect 27 0 28 0;
+#X connect 28 0 6 0;
 #X restore 61 66 pd set_\$0-libdir;
 #N canvas 246 217 382 392 set_\$0-current_libdir 0;
 #X obj 67 30 inlet;
-- 
GitLab


From 7a6e1d436a6585c4734e33ec6cb27a4f0ab0ed91 Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Sun, 13 Aug 2017 17:52:49 -0400
Subject: [PATCH 63/98] fix typo ("libdir" should have been "dir")

---
 scripts/external-tests.pd | 24 ++++++++++++------------
 1 file changed, 12 insertions(+), 12 deletions(-)

diff --git a/scripts/external-tests.pd b/scripts/external-tests.pd
index cc20b4c5f..3b5bb8ebf 100644
--- a/scripts/external-tests.pd
+++ b/scripts/external-tests.pd
@@ -712,7 +712,7 @@ nameclash is in the current library we're testing then we ignore it.
 #X obj 371 313 s \$0-last-objectmaker-methodspace-length;
 #X text 304 85 \$0-last-objectmaker-methodspace-length;
 #X text 304 105 \$0-ext;
-#N canvas 1 53 554 595 set_\$0-libdir 0;
+#N canvas 1 53 554 595 set_\$0-libdir 1;
 #X obj 49 48 inlet;
 #X obj 49 317 pdinfo;
 #X obj 49 78 b;
@@ -736,7 +736,6 @@ nameclash is in the current library we're testing then we ignore it.
 ;
 #X text 171 260 the "/bin" at the end...;
 #X obj 119 317 pdinfo;
-#X msg 119 288 libdir;
 #X obj 119 342 list fromsymbol;
 #X obj 119 367 t a a;
 #X obj 151 398 list length;
@@ -744,6 +743,7 @@ nameclash is in the current library we're testing then we ignore it.
 #X obj 119 452 list split;
 #X obj 119 477 list tosymbol;
 #X text 245 414 <- filter out "/ b i n";
+#X msg 119 288 dir;
 #X connect 0 0 2 0;
 #X connect 1 0 6 0;
 #X connect 2 0 9 0;
@@ -758,16 +758,16 @@ nameclash is in the current library we're testing then we ignore it.
 #X connect 12 0 13 0;
 #X connect 13 0 14 0;
 #X connect 14 0 3 0;
-#X connect 14 1 22 0;
-#X connect 21 0 23 0;
-#X connect 22 0 21 0;
-#X connect 23 0 24 0;
-#X connect 24 0 27 0;
-#X connect 24 1 25 0;
-#X connect 25 0 26 0;
-#X connect 26 0 27 1;
-#X connect 27 0 28 0;
-#X connect 28 0 6 0;
+#X connect 14 1 29 0;
+#X connect 21 0 22 0;
+#X connect 22 0 23 0;
+#X connect 23 0 26 0;
+#X connect 23 1 24 0;
+#X connect 24 0 25 0;
+#X connect 25 0 26 1;
+#X connect 26 0 27 0;
+#X connect 27 0 6 0;
+#X connect 29 0 21 0;
 #X restore 61 66 pd set_\$0-libdir;
 #N canvas 246 217 382 392 set_\$0-current_libdir 0;
 #X obj 67 30 inlet;
-- 
GitLab


From 1e3c309b691a6ee8f74bbd2078cab7e635b5d87e Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Sun, 13 Aug 2017 18:21:47 -0400
Subject: [PATCH 64/98] take trailing slash into account

---
 scripts/external-tests.pd | 41 ++++++++++++++++++++++-----------------
 1 file changed, 23 insertions(+), 18 deletions(-)

diff --git a/scripts/external-tests.pd b/scripts/external-tests.pd
index 3b5bb8ebf..27d4497a4 100644
--- a/scripts/external-tests.pd
+++ b/scripts/external-tests.pd
@@ -1,4 +1,4 @@
-#N canvas 3 53 659 639 12;
+#N canvas 2 53 659 639 12;
 #X obj 61 34 loadbang;
 #N canvas 107 123 756 233 load_hcs/folder_list 0;
 #X obj 357 47 inlet;
@@ -712,15 +712,15 @@ nameclash is in the current library we're testing then we ignore it.
 #X obj 371 313 s \$0-last-objectmaker-methodspace-length;
 #X text 304 85 \$0-last-objectmaker-methodspace-length;
 #X text 304 105 \$0-ext;
-#N canvas 1 53 554 595 set_\$0-libdir 1;
+#N canvas 12 53 717 595 set_\$0-libdir 0;
 #X obj 49 48 inlet;
 #X obj 49 317 pdinfo;
 #X obj 49 78 b;
 #X msg 49 288 libdir;
-#X obj 49 567 outlet;
+#X obj 49 540 outlet;
 #X text 97 48 get the directory where extra/ and doc/ live;
-#X obj 49 541 trigger anything anything;
-#X obj 221 567 s \$0-libdir;
+#X obj 49 514 trigger anything anything;
+#X obj 221 540 s \$0-libdir;
 #X obj 49 131 pdinfo;
 #X msg 49 106 platform;
 #X obj 49 156 select darwin;
@@ -737,13 +737,18 @@ nameclash is in the current library we're testing then we ignore it.
 #X text 171 260 the "/bin" at the end...;
 #X obj 119 317 pdinfo;
 #X obj 119 342 list fromsymbol;
-#X obj 119 367 t a a;
 #X obj 151 398 list length;
-#X obj 151 423 - 3;
-#X obj 119 452 list split;
-#X obj 119 477 list tosymbol;
-#X text 245 414 <- filter out "/ b i n";
+#X obj 119 455 list split;
+#X obj 119 480 list tosymbol;
 #X msg 119 288 dir;
+#X obj 119 367 trigger anything anything anything;
+#X text 266 401 OSX gives up back an execdir with a trailing slash.
+Should;
+#X text 266 421 probably normalize the *info classes that output paths
+to;
+#X text 266 441 either always use trailing slashes or never use them.
+;
+#X obj 151 426 - 4;
 #X connect 0 0 2 0;
 #X connect 1 0 6 0;
 #X connect 2 0 9 0;
@@ -758,16 +763,16 @@ nameclash is in the current library we're testing then we ignore it.
 #X connect 12 0 13 0;
 #X connect 13 0 14 0;
 #X connect 14 0 3 0;
-#X connect 14 1 29 0;
+#X connect 14 1 26 0;
 #X connect 21 0 22 0;
-#X connect 22 0 23 0;
-#X connect 23 0 26 0;
-#X connect 23 1 24 0;
+#X connect 22 0 27 0;
+#X connect 23 0 31 0;
 #X connect 24 0 25 0;
-#X connect 25 0 26 1;
-#X connect 26 0 27 0;
-#X connect 27 0 6 0;
-#X connect 29 0 21 0;
+#X connect 25 0 6 0;
+#X connect 26 0 21 0;
+#X connect 27 0 24 0;
+#X connect 27 1 23 0;
+#X connect 31 0 24 1;
 #X restore 61 66 pd set_\$0-libdir;
 #N canvas 246 217 382 392 set_\$0-current_libdir 0;
 #X obj 67 30 inlet;
-- 
GitLab


From 0ac885dd20d99f42a9859c9c09d7e156a41c38f9 Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Sun, 13 Aug 2017 18:24:37 -0400
Subject: [PATCH 65/98] chop off the entire "/ b i n /" dir suffix

---
 scripts/external-tests.pd | 13 +++++++------
 1 file changed, 7 insertions(+), 6 deletions(-)

diff --git a/scripts/external-tests.pd b/scripts/external-tests.pd
index 27d4497a4..2a4040670 100644
--- a/scripts/external-tests.pd
+++ b/scripts/external-tests.pd
@@ -1,4 +1,4 @@
-#N canvas 2 53 659 639 12;
+#N canvas 3 53 659 639 12;
 #X obj 61 34 loadbang;
 #N canvas 107 123 756 233 load_hcs/folder_list 0;
 #X obj 357 47 inlet;
@@ -712,7 +712,7 @@ nameclash is in the current library we're testing then we ignore it.
 #X obj 371 313 s \$0-last-objectmaker-methodspace-length;
 #X text 304 85 \$0-last-objectmaker-methodspace-length;
 #X text 304 105 \$0-ext;
-#N canvas 12 53 717 595 set_\$0-libdir 0;
+#N canvas 1 53 717 595 set_\$0-libdir 0;
 #X obj 49 48 inlet;
 #X obj 49 317 pdinfo;
 #X obj 49 78 b;
@@ -742,13 +742,14 @@ nameclash is in the current library we're testing then we ignore it.
 #X obj 119 480 list tosymbol;
 #X msg 119 288 dir;
 #X obj 119 367 trigger anything anything anything;
-#X text 266 401 OSX gives up back an execdir with a trailing slash.
+#X text 256 461 OSX gives up back an execdir with a trailing slash.
 Should;
-#X text 266 421 probably normalize the *info classes that output paths
+#X text 256 481 probably normalize the *info classes that output paths
 to;
-#X text 266 441 either always use trailing slashes or never use them.
+#X text 256 501 either always use trailing slashes or never use them.
 ;
-#X obj 151 426 - 4;
+#X obj 151 426 - 5;
+#X text 256 421 slice off "/ b i n /";
 #X connect 0 0 2 0;
 #X connect 1 0 6 0;
 #X connect 2 0 9 0;
-- 
GitLab


From b72d97031c58d98802be83145f09fec898c9ccd2 Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Sun, 13 Aug 2017 19:23:57 -0400
Subject: [PATCH 66/98] try to track down a loadsym bug

---
 pd/src/m_class.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/pd/src/m_class.c b/pd/src/m_class.c
index 062746561..d7bd0f395 100644
--- a/pd/src/m_class.c
+++ b/pd/src/m_class.c
@@ -219,6 +219,7 @@ t_class *classtable_findbyname(t_symbol *s)
 t_class *class_new(t_symbol *s, t_newmethod newmethod, t_method freemethod,
     size_t size, int flags, t_atomtype type1, ...)
 {
+post("class_new");
     va_list ap;
     t_atomtype vec[MAXPDARG+1], *vp = vec;
     int count = 0;
@@ -246,8 +247,10 @@ t_class *class_new(t_symbol *s, t_newmethod newmethod, t_method freemethod,
             /* add a "new" method by the name specified by the object */
         class_addmethod(pd_objectmaker, (t_method)newmethod, s,
             vec[0], vec[1], vec[2], vec[3], vec[4], vec[5]);
+post("about to check for class_loadsym, which is %s", class_loadsym);
         if (class_loadsym)
         {
+post("got a loadsym... adding %s", class_loadsym);
                 /* if we're loading an extern it might have been invoked by a
                 longer file name; in this case, make this an admissible name
                 too. */
@@ -632,6 +635,7 @@ void new_anything(void *dummy, t_symbol *s, int argc, t_atom *argv)
     }
     newest = 0;
     class_loadsym = s;
+post("new_anything: class_loadsym is %s", class_loadsym);
     if (sys_load_lib(canvas_getcurrent(), s->s_name))
     {
         tryingalready++;
-- 
GitLab


From 2301d98fa7c4838c08e7519fc40e200c6f7d3086 Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Sun, 13 Aug 2017 20:49:49 -0400
Subject: [PATCH 67/98] Revert "try to track down a loadsym bug"

This reverts commit b72d97031c58d98802be83145f09fec898c9ccd2.
---
 pd/src/m_class.c | 4 ----
 1 file changed, 4 deletions(-)

diff --git a/pd/src/m_class.c b/pd/src/m_class.c
index d7bd0f395..062746561 100644
--- a/pd/src/m_class.c
+++ b/pd/src/m_class.c
@@ -219,7 +219,6 @@ t_class *classtable_findbyname(t_symbol *s)
 t_class *class_new(t_symbol *s, t_newmethod newmethod, t_method freemethod,
     size_t size, int flags, t_atomtype type1, ...)
 {
-post("class_new");
     va_list ap;
     t_atomtype vec[MAXPDARG+1], *vp = vec;
     int count = 0;
@@ -247,10 +246,8 @@ post("class_new");
             /* add a "new" method by the name specified by the object */
         class_addmethod(pd_objectmaker, (t_method)newmethod, s,
             vec[0], vec[1], vec[2], vec[3], vec[4], vec[5]);
-post("about to check for class_loadsym, which is %s", class_loadsym);
         if (class_loadsym)
         {
-post("got a loadsym... adding %s", class_loadsym);
                 /* if we're loading an extern it might have been invoked by a
                 longer file name; in this case, make this an admissible name
                 too. */
@@ -635,7 +632,6 @@ void new_anything(void *dummy, t_symbol *s, int argc, t_atom *argv)
     }
     newest = 0;
     class_loadsym = s;
-post("new_anything: class_loadsym is %s", class_loadsym);
     if (sys_load_lib(canvas_getcurrent(), s->s_name))
     {
         tryingalready++;
-- 
GitLab


From 6ba02031c665c5ecd9d230bc857941f92c27ac0d Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Sun, 13 Aug 2017 20:51:20 -0400
Subject: [PATCH 68/98] use int instead of signed char for comparing loadsym,
 as absolute paths can exceed 128 characters

---
 pd/src/m_class.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pd/src/m_class.c b/pd/src/m_class.c
index 062746561..00e828782 100644
--- a/pd/src/m_class.c
+++ b/pd/src/m_class.c
@@ -251,8 +251,8 @@ t_class *class_new(t_symbol *s, t_newmethod newmethod, t_method freemethod,
                 /* if we're loading an extern it might have been invoked by a
                 longer file name; in this case, make this an admissible name
                 too. */
-            char *loadstring = class_loadsym->s_name,
-                l1 = strlen(s->s_name), l2 = strlen(loadstring);
+            char *loadstring = class_loadsym->s_name;
+            int l1 = strlen(s->s_name), l2 = strlen(loadstring);
             if (l2 > l1 && !strcmp(s->s_name, loadstring + (l2 - l1)))
                 class_addmethod(pd_objectmaker, (t_method)newmethod,
                     class_loadsym,
-- 
GitLab


From 4f8adfe3be82d4395d078409b27c64fddb8927be Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Sun, 13 Aug 2017 20:55:05 -0400
Subject: [PATCH 69/98] revert to using a single way for finding the libdir, as
 my assessment of the OSX bug turned out to be wrong

---
 scripts/external-tests.pd | 71 ++++++---------------------------------
 1 file changed, 11 insertions(+), 60 deletions(-)

diff --git a/scripts/external-tests.pd b/scripts/external-tests.pd
index 2a4040670..b2a70f596 100644
--- a/scripts/external-tests.pd
+++ b/scripts/external-tests.pd
@@ -1,4 +1,4 @@
-#N canvas 3 53 659 639 12;
+#N canvas 4 53 659 639 12;
 #X obj 61 34 loadbang;
 #N canvas 107 123 756 233 load_hcs/folder_list 0;
 #X obj 357 47 inlet;
@@ -712,68 +712,19 @@ nameclash is in the current library we're testing then we ignore it.
 #X obj 371 313 s \$0-last-objectmaker-methodspace-length;
 #X text 304 85 \$0-last-objectmaker-methodspace-length;
 #X text 304 105 \$0-ext;
-#N canvas 1 53 717 595 set_\$0-libdir 0;
+#N canvas 1 53 436 328 set_\$0-libdir 0;
 #X obj 49 48 inlet;
-#X obj 49 317 pdinfo;
-#X obj 49 78 b;
-#X msg 49 288 libdir;
-#X obj 49 540 outlet;
+#X obj 49 127 pdinfo;
+#X msg 49 98 libdir;
+#X obj 49 220 outlet;
 #X text 97 48 get the directory where extra/ and doc/ live;
-#X obj 49 514 trigger anything anything;
-#X obj 221 540 s \$0-libdir;
-#X obj 49 131 pdinfo;
-#X msg 49 106 platform;
-#X obj 49 156 select darwin;
-#X msg 49 181 1;
-#X obj 137 181 b;
-#X msg 137 206 0;
-#X obj 49 246 select 0 1;
-#X text 171 160 Unfortunately Pd on OSX has a bug that causes the;
-#X text 171 180 libdir to not be normalized-- e.g. \, it can have;
-#X text 171 200 "foo/../bar" within the path. This breaks our;
-#X text 171 220 attempt to create objects with absolute paths. So;
-#X text 171 240 we instead use the Pd executable dir and shave off
-;
-#X text 171 260 the "/bin" at the end...;
-#X obj 119 317 pdinfo;
-#X obj 119 342 list fromsymbol;
-#X obj 151 398 list length;
-#X obj 119 455 list split;
-#X obj 119 480 list tosymbol;
-#X msg 119 288 dir;
-#X obj 119 367 trigger anything anything anything;
-#X text 256 461 OSX gives up back an execdir with a trailing slash.
-Should;
-#X text 256 481 probably normalize the *info classes that output paths
-to;
-#X text 256 501 either always use trailing slashes or never use them.
-;
-#X obj 151 426 - 5;
-#X text 256 421 slice off "/ b i n /";
+#X obj 49 194 trigger anything anything;
+#X obj 221 220 s \$0-libdir;
 #X connect 0 0 2 0;
-#X connect 1 0 6 0;
-#X connect 2 0 9 0;
-#X connect 3 0 1 0;
-#X connect 6 0 4 0;
-#X connect 6 1 7 0;
-#X connect 8 0 10 0;
-#X connect 9 0 8 0;
-#X connect 10 0 11 0;
-#X connect 10 1 12 0;
-#X connect 11 0 14 0;
-#X connect 12 0 13 0;
-#X connect 13 0 14 0;
-#X connect 14 0 3 0;
-#X connect 14 1 26 0;
-#X connect 21 0 22 0;
-#X connect 22 0 27 0;
-#X connect 23 0 31 0;
-#X connect 24 0 25 0;
-#X connect 25 0 6 0;
-#X connect 26 0 21 0;
-#X connect 27 0 24 0;
-#X connect 27 1 23 0;
-#X connect 31 0 24 1;
+#X connect 1 0 5 0;
+#X connect 2 0 1 0;
+#X connect 5 0 3 0;
+#X connect 5 1 6 0;
 #X restore 61 66 pd set_\$0-libdir;
 #N canvas 246 217 382 392 set_\$0-current_libdir 0;
 #X obj 67 30 inlet;
-- 
GitLab


From aad4821140f7f2c0585a05b618a5c0887ca97e98 Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Sun, 13 Aug 2017 20:59:56 -0400
Subject: [PATCH 70/98] debug hid (or post-hid) freeze in test

---
 scripts/external-tests.pd | 50 +++++++++++++++++++++------------------
 1 file changed, 27 insertions(+), 23 deletions(-)

diff --git a/scripts/external-tests.pd b/scripts/external-tests.pd
index b2a70f596..2c3ca0ae6 100644
--- a/scripts/external-tests.pd
+++ b/scripts/external-tests.pd
@@ -1,4 +1,4 @@
-#N canvas 4 53 659 639 12;
+#N canvas 5 53 659 668 12;
 #X obj 61 34 loadbang;
 #N canvas 107 123 756 233 load_hcs/folder_list 0;
 #X obj 357 47 inlet;
@@ -15,7 +15,7 @@
 #X connect 3 0 4 0;
 #X connect 5 0 6 0;
 #X connect 7 0 1 0;
-#X restore 164 429 pd load_hcs/folder_list;
+#X restore 164 459 pd load_hcs/folder_list;
 #X text 304 45 \$0-libdir - directory containing doc and extra;
 #N canvas 44 204 956 472 list_of_libdirs 0;
 #X obj 24 9 inlet;
@@ -134,8 +134,8 @@ pmpd purepd rjlib rradical rtc sfruit sigmund~ stdout timestretch windowing
 #X connect 17 0 19 0;
 #X connect 18 0 17 0;
 #X connect 19 0 21 0;
-#X restore 310 184 pd get_extensions;
-#X obj 164 275 list;
+#X restore 310 214 pd get_extensions;
+#X obj 164 305 list;
 #N canvas 245 192 382 392 list_drip 0;
 #X obj 67 30 inlet;
 #X obj 102 83 list length;
@@ -169,12 +169,12 @@ pmpd purepd rjlib rradical rtc sfruit sigmund~ stdout timestretch windowing
 #X connect 12 2 9 0;
 #X connect 12 2 13 0;
 #X connect 13 0 7 1;
-#X restore 164 304 pd list_drip;
+#X restore 164 334 pd list_drip;
 #X text 304 65 \$0-current-libdir - current libdir being tested;
-#X obj 290 288 t a a;
-#X obj 164 369 pack s s s;
-#X text 249 369 ext current-libdir libdir;
-#X msg 164 394 list \$3/extra/\$2/*\$1;
+#X obj 290 318 t a a;
+#X obj 164 399 pack s s s;
+#X text 249 399 ext current-libdir libdir;
+#X msg 164 424 list \$3/extra/\$2/*\$1;
 #N canvas 314 37 450 472 remove_help_patches 0;
 #X obj 40 14 inlet;
 #X obj 126 18 r \$0-ext;
@@ -224,7 +224,7 @@ pmpd purepd rjlib rradical rtc sfruit sigmund~ stdout timestretch windowing
 #X connect 18 0 16 1;
 #X connect 19 0 20 0;
 #X connect 21 0 8 0;
-#X restore 164 453 pd remove_help_patches;
+#X restore 164 483 pd remove_help_patches;
 #N canvas 0 0 450 300 remove_ext 0;
 #X obj 28 30 inlet;
 #X obj 78 150 r \$0-ext;
@@ -248,7 +248,7 @@ pmpd purepd rjlib rradical rtc sfruit sigmund~ stdout timestretch windowing
 #X connect 7 0 4 1;
 #X connect 8 0 9 0;
 #X connect 10 0 2 0;
-#X restore 164 479 pd remove_ext;
+#X restore 164 509 pd remove_ext;
 #N canvas 70 66 589 509 test_load_with_declare 0;
 #X obj 64 21 inlet;
 #N canvas 0 0 450 300 \$0-load_declare 0;
@@ -288,7 +288,7 @@ works.;
 #X connect 11 2 5 1;
 #X connect 12 0 6 0;
 #X connect 15 0 7 0;
-#X restore 164 509 pd test_load_with_declare;
+#X restore 164 539 pd test_load_with_declare;
 #N canvas 464 46 450 650 get-creator-names 0;
 #X obj 41 22 inlet;
 #X obj 41 586 outlet;
@@ -353,7 +353,7 @@ works.;
 #X connect 28 0 14 0;
 #X connect 28 1 19 1;
 #X connect 29 0 19 0;
-#X restore 132 543 pd get-creator-names;
+#X restore 132 573 pd get-creator-names;
 #N canvas 240 179 450 346 test-object 0;
 #X obj 26 36 inlet;
 #X text 72 34 creator_name argtype1 argtype2 etc.;
@@ -705,11 +705,11 @@ nameclash is in the current library we're testing then we ignore it.
 #X connect 9 0 8 0;
 #X connect 10 0 3 0;
 #X connect 10 2 11 0;
-#X restore 132 574 pd test-object;
-#X obj 164 239 trigger bang anything anything;
-#X msg 371 263 methods;
-#X obj 371 288 classinfo objectmaker;
-#X obj 371 313 s \$0-last-objectmaker-methodspace-length;
+#X restore 132 604 pd test-object;
+#X obj 164 269 trigger bang anything anything;
+#X msg 371 293 methods;
+#X obj 371 318 classinfo objectmaker;
+#X obj 371 343 s \$0-last-objectmaker-methodspace-length;
 #X text 304 85 \$0-last-objectmaker-methodspace-length;
 #X text 304 105 \$0-ext;
 #N canvas 1 53 436 328 set_\$0-libdir 0;
@@ -734,7 +734,7 @@ nameclash is in the current library we're testing then we ignore it.
 #X connect 0 0 1 0;
 #X connect 1 0 2 0;
 #X connect 1 1 3 0;
-#X restore 132 184 pd set_\$0-current_libdir;
+#X restore 132 214 pd set_\$0-current_libdir;
 #N canvas 0 0 450 300 set_\$0-ext 0;
 #X obj 78 44 inlet;
 #X obj 78 69 trigger anything anything;
@@ -743,7 +743,7 @@ nameclash is in the current library we're testing then we ignore it.
 #X connect 0 0 1 0;
 #X connect 1 0 2 0;
 #X connect 1 1 3 0;
-#X restore 164 329 pd set_\$0-ext;
+#X restore 164 359 pd set_\$0-ext;
 #N canvas 35 53 672 572 results 0;
 #X obj 62 25 inlet;
 #X obj 235 33 r \$0-current-libdir-name;
@@ -834,13 +834,15 @@ nameclash is in the current library we're testing then we ignore it.
 #X connect 40 0 41 0;
 #X connect 40 1 36 0;
 #X connect 41 0 37 0;
-#X restore 61 601 pd results;
-#X obj 132 209 t a a;
+#X restore 61 631 pd results;
+#X obj 132 239 t a a;
 #X obj 61 94 trigger bang bang bang anything;
+#X obj 132 179 t a a;
+#X obj 403 169 print testing_lib;
 #X connect 0 0 24 0;
 #X connect 1 0 13 0;
 #X connect 3 0 4 0;
-#X connect 4 0 25 0;
+#X connect 4 0 30 0;
 #X connect 5 0 6 1;
 #X connect 6 0 7 0;
 #X connect 7 0 26 0;
@@ -865,3 +867,5 @@ nameclash is in the current library we're testing then we ignore it.
 #X connect 29 1 3 0;
 #X connect 29 2 5 0;
 #X connect 29 3 9 0;
+#X connect 30 0 25 0;
+#X connect 30 1 31 0;
-- 
GitLab


From 3981157d43c81f22ec9e4779e917593264391c96 Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Sun, 13 Aug 2017 22:59:34 -0400
Subject: [PATCH 71/98] another set of debugging messages for the test

---
 scripts/external-tests.pd | 48 +++++++++++++++++++++++----------------
 1 file changed, 28 insertions(+), 20 deletions(-)

diff --git a/scripts/external-tests.pd b/scripts/external-tests.pd
index 2c3ca0ae6..a7ddcb1b6 100644
--- a/scripts/external-tests.pd
+++ b/scripts/external-tests.pd
@@ -1,4 +1,4 @@
-#N canvas 5 53 659 668 12;
+#N canvas 2 53 659 672 12;
 #X obj 61 34 loadbang;
 #N canvas 107 123 756 233 load_hcs/folder_list 0;
 #X obj 357 47 inlet;
@@ -17,12 +17,8 @@
 #X connect 7 0 1 0;
 #X restore 164 459 pd load_hcs/folder_list;
 #X text 304 45 \$0-libdir - directory containing doc and extra;
-#N canvas 44 204 956 472 list_of_libdirs 0;
+#N canvas 45 220 956 472 list_of_libdirs 0;
 #X obj 24 9 inlet;
-#X msg 24 150 libdir cyclone zexy creb cxc iemlib list-abs mapping
-markex maxlib memento mjlib motex osx pddp pdogg pixeltango pmpd rradical
-sigpack smlib unauthorized vbap pan freeverb~ hcs jmmmp ext13 ggee
-iem_anything ekext hexloader disis lyonpotpourri;
 #X text 70 128 libraries that are loaded at startup in Purr Data;
 #X text 49 267 Gem is currently excluded because it doesn't run on
 all platforms;
@@ -43,12 +39,16 @@ iemxmlrpc jasch_lib K12 la-kitchen loop~ lrshift~ memento-p mjlib moocow
 moonlib motex mrpeach nsend pan pd~ pdcontainer pd-wavelet pique plugin~
 pmpd purepd rjlib rradical rtc sfruit sigmund~ stdout timestretch windowing
 ;
-#X connect 0 0 11 0;
-#X connect 1 0 10 0;
-#X connect 10 0 4 0;
-#X connect 11 0 1 0;
-#X connect 11 1 12 0;
-#X connect 12 0 10 1;
+#X msg 24 150 google libdir cyclone zexy creb cxc iemlib list-abs mapping
+markex maxlib memento mjlib motex osx pddp pdogg pixeltango pmpd rradical
+sigpack smlib unauthorized vbap pan freeverb~ hcs jmmmp ext13 ggee
+iem_anything ekext hexloader disis lyonpotpourri;
+#X connect 0 0 10 0;
+#X connect 9 0 3 0;
+#X connect 10 0 12 0;
+#X connect 10 1 11 0;
+#X connect 11 0 9 1;
+#X connect 12 0 9 0;
 #X restore 132 124 pd list_of_libdirs;
 #N canvas 245 192 382 392 list_drip 0;
 #X obj 67 30 inlet;
@@ -288,7 +288,7 @@ works.;
 #X connect 11 2 5 1;
 #X connect 12 0 6 0;
 #X connect 15 0 7 0;
-#X restore 164 539 pd test_load_with_declare;
+#X restore 164 569 pd test_load_with_declare;
 #N canvas 464 46 450 650 get-creator-names 0;
 #X obj 41 22 inlet;
 #X obj 41 586 outlet;
@@ -353,7 +353,7 @@ works.;
 #X connect 28 0 14 0;
 #X connect 28 1 19 1;
 #X connect 29 0 19 0;
-#X restore 132 573 pd get-creator-names;
+#X restore 132 603 pd get-creator-names;
 #N canvas 240 179 450 346 test-object 0;
 #X obj 26 36 inlet;
 #X text 72 34 creator_name argtype1 argtype2 etc.;
@@ -705,7 +705,7 @@ nameclash is in the current library we're testing then we ignore it.
 #X connect 9 0 8 0;
 #X connect 10 0 3 0;
 #X connect 10 2 11 0;
-#X restore 132 604 pd test-object;
+#X restore 132 664 pd test-object;
 #X obj 164 269 trigger bang anything anything;
 #X msg 371 293 methods;
 #X obj 371 318 classinfo objectmaker;
@@ -834,11 +834,15 @@ nameclash is in the current library we're testing then we ignore it.
 #X connect 40 0 41 0;
 #X connect 40 1 36 0;
 #X connect 41 0 37 0;
-#X restore 61 631 pd results;
+#X restore 61 691 pd results;
 #X obj 132 239 t a a;
 #X obj 61 94 trigger bang bang bang anything;
 #X obj 132 179 t a a;
-#X obj 403 169 print testing_lib;
+#X obj 164 534 t a a;
+#X obj 403 169 print testing_libdir;
+#X obj 314 526 print loading_lib;
+#X obj 132 628 t a a;
+#X obj 280 648 print creating_object;
 #X connect 0 0 24 0;
 #X connect 1 0 13 0;
 #X connect 3 0 4 0;
@@ -851,8 +855,8 @@ nameclash is in the current library we're testing then we ignore it.
 #X connect 10 0 12 0;
 #X connect 12 0 1 0;
 #X connect 13 0 14 0;
-#X connect 14 0 15 0;
-#X connect 16 0 17 0;
+#X connect 14 0 31 0;
+#X connect 16 0 34 0;
 #X connect 18 0 6 0;
 #X connect 18 1 10 1;
 #X connect 18 2 19 0;
@@ -868,4 +872,8 @@ nameclash is in the current library we're testing then we ignore it.
 #X connect 29 2 5 0;
 #X connect 29 3 9 0;
 #X connect 30 0 25 0;
-#X connect 30 1 31 0;
+#X connect 30 1 32 0;
+#X connect 31 0 15 0;
+#X connect 31 1 33 0;
+#X connect 34 0 17 0;
+#X connect 34 1 35 0;
-- 
GitLab


From 00d3d19f7f27d8a38045936a2309e15d45f6e7df Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Mon, 14 Aug 2017 10:01:28 -0400
Subject: [PATCH 72/98] more debugging messages for tests

---
 scripts/external-tests.pd | 18 +++++++++++-------
 1 file changed, 11 insertions(+), 7 deletions(-)

diff --git a/scripts/external-tests.pd b/scripts/external-tests.pd
index a7ddcb1b6..c290d4a0a 100644
--- a/scripts/external-tests.pd
+++ b/scripts/external-tests.pd
@@ -1,4 +1,4 @@
-#N canvas 2 53 659 672 12;
+#N canvas 3 53 659 616 12;
 #X obj 61 34 loadbang;
 #N canvas 107 123 756 233 load_hcs/folder_list 0;
 #X obj 357 47 inlet;
@@ -353,7 +353,7 @@ works.;
 #X connect 28 0 14 0;
 #X connect 28 1 19 1;
 #X connect 29 0 19 0;
-#X restore 132 603 pd get-creator-names;
+#X restore 132 653 pd get-creator-names;
 #N canvas 240 179 450 346 test-object 0;
 #X obj 26 36 inlet;
 #X text 72 34 creator_name argtype1 argtype2 etc.;
@@ -705,7 +705,7 @@ nameclash is in the current library we're testing then we ignore it.
 #X connect 9 0 8 0;
 #X connect 10 0 3 0;
 #X connect 10 2 11 0;
-#X restore 132 664 pd test-object;
+#X restore 132 714 pd test-object;
 #X obj 164 269 trigger bang anything anything;
 #X msg 371 293 methods;
 #X obj 371 318 classinfo objectmaker;
@@ -834,15 +834,17 @@ nameclash is in the current library we're testing then we ignore it.
 #X connect 40 0 41 0;
 #X connect 40 1 36 0;
 #X connect 41 0 37 0;
-#X restore 61 691 pd results;
+#X restore 61 741 pd results;
 #X obj 132 239 t a a;
 #X obj 61 94 trigger bang bang bang anything;
 #X obj 132 179 t a a;
 #X obj 164 534 t a a;
 #X obj 403 169 print testing_libdir;
 #X obj 314 526 print loading_lib;
-#X obj 132 628 t a a;
-#X obj 280 648 print creating_object;
+#X obj 132 678 t a a;
+#X obj 250 714 print creating_object;
+#X obj 132 607 t a a;
+#X obj 242 613 print getting_creator_names;
 #X connect 0 0 24 0;
 #X connect 1 0 13 0;
 #X connect 3 0 4 0;
@@ -865,7 +867,7 @@ nameclash is in the current library we're testing then we ignore it.
 #X connect 24 0 29 0;
 #X connect 25 0 28 0;
 #X connect 26 0 10 0;
-#X connect 28 0 16 0;
+#X connect 28 0 36 0;
 #X connect 28 1 18 0;
 #X connect 29 0 27 0;
 #X connect 29 1 3 0;
@@ -877,3 +879,5 @@ nameclash is in the current library we're testing then we ignore it.
 #X connect 31 1 33 0;
 #X connect 34 0 17 0;
 #X connect 34 1 35 0;
+#X connect 36 0 16 0;
+#X connect 36 1 37 0;
-- 
GitLab


From ddfbb4f5b2a305e0f2aa0d362f5339df149c51db Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Mon, 14 Aug 2017 11:47:06 -0400
Subject: [PATCH 73/98] debug using a single lib known to hang on OSX

---
 scripts/external-tests.pd | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/scripts/external-tests.pd b/scripts/external-tests.pd
index c290d4a0a..18d9d4788 100644
--- a/scripts/external-tests.pd
+++ b/scripts/external-tests.pd
@@ -1,4 +1,4 @@
-#N canvas 3 53 659 616 12;
+#N canvas 46 53 659 616 12;
 #X obj 61 34 loadbang;
 #N canvas 107 123 756 233 load_hcs/folder_list 0;
 #X obj 357 47 inlet;
@@ -49,7 +49,7 @@ iem_anything ekext hexloader disis lyonpotpourri;
 #X connect 10 1 11 0;
 #X connect 11 0 9 1;
 #X connect 12 0 9 0;
-#X restore 132 124 pd list_of_libdirs;
+#X restore 162 124 pd list_of_libdirs;
 #N canvas 245 192 382 392 list_drip 0;
 #X obj 67 30 inlet;
 #X obj 102 83 list length;
@@ -845,9 +845,9 @@ nameclash is in the current library we're testing then we ignore it.
 #X obj 250 714 print creating_object;
 #X obj 132 607 t a a;
 #X obj 242 613 print getting_creator_names;
+#X msg 69 127 list iem16;
 #X connect 0 0 24 0;
 #X connect 1 0 13 0;
-#X connect 3 0 4 0;
 #X connect 4 0 30 0;
 #X connect 5 0 6 1;
 #X connect 6 0 7 0;
@@ -870,7 +870,7 @@ nameclash is in the current library we're testing then we ignore it.
 #X connect 28 0 36 0;
 #X connect 28 1 18 0;
 #X connect 29 0 27 0;
-#X connect 29 1 3 0;
+#X connect 29 1 38 0;
 #X connect 29 2 5 0;
 #X connect 29 3 9 0;
 #X connect 30 0 25 0;
@@ -881,3 +881,4 @@ nameclash is in the current library we're testing then we ignore it.
 #X connect 34 1 35 0;
 #X connect 36 0 16 0;
 #X connect 36 1 37 0;
+#X connect 38 0 4 0;
-- 
GitLab


From f40f3ea264946b83a57c7af23671d9ce3a758499 Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Mon, 14 Aug 2017 11:52:20 -0400
Subject: [PATCH 74/98] remove comma from metafile, as it gets re-interpreted
 as a message in Pd

---
 externals/Makefile | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/externals/Makefile b/externals/Makefile
index 4669ef869..ef87240de 100644
--- a/externals/Makefile
+++ b/externals/Makefile
@@ -937,7 +937,7 @@ iem16_install: iem16
 	install -d $(DESTDIR)$(objectsdir)/$(IEM16_NAME)
 	$(scripts_src)/generate-libdir-metafile.sh $(DESTDIR)$(objectsdir) $(IEM16_NAME) \
 		--author "IOhannes m zmoelnig" \
-		--description "16bit table, array objects for low memory usage" \
+		--description "16bit table/array objects for low memory usage" \
 		--license "GNU GPL" \
 		--version "0.1"
 	install -p $(IEM16_DIR)/*.$(EXTENSION) $(DESTDIR)$(objectsdir)/$(IEM16_NAME)
-- 
GitLab


From 2df4f588717d9f3bd4ffd402a712a6f65f902e51 Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Mon, 14 Aug 2017 11:54:27 -0400
Subject: [PATCH 75/98] Revert "debug using a single lib known to hang on OSX"

This reverts commit ddfbb4f5b2a305e0f2aa0d362f5339df149c51db.
---
 scripts/external-tests.pd | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

diff --git a/scripts/external-tests.pd b/scripts/external-tests.pd
index 18d9d4788..c290d4a0a 100644
--- a/scripts/external-tests.pd
+++ b/scripts/external-tests.pd
@@ -1,4 +1,4 @@
-#N canvas 46 53 659 616 12;
+#N canvas 3 53 659 616 12;
 #X obj 61 34 loadbang;
 #N canvas 107 123 756 233 load_hcs/folder_list 0;
 #X obj 357 47 inlet;
@@ -49,7 +49,7 @@ iem_anything ekext hexloader disis lyonpotpourri;
 #X connect 10 1 11 0;
 #X connect 11 0 9 1;
 #X connect 12 0 9 0;
-#X restore 162 124 pd list_of_libdirs;
+#X restore 132 124 pd list_of_libdirs;
 #N canvas 245 192 382 392 list_drip 0;
 #X obj 67 30 inlet;
 #X obj 102 83 list length;
@@ -845,9 +845,9 @@ nameclash is in the current library we're testing then we ignore it.
 #X obj 250 714 print creating_object;
 #X obj 132 607 t a a;
 #X obj 242 613 print getting_creator_names;
-#X msg 69 127 list iem16;
 #X connect 0 0 24 0;
 #X connect 1 0 13 0;
+#X connect 3 0 4 0;
 #X connect 4 0 30 0;
 #X connect 5 0 6 1;
 #X connect 6 0 7 0;
@@ -870,7 +870,7 @@ nameclash is in the current library we're testing then we ignore it.
 #X connect 28 0 36 0;
 #X connect 28 1 18 0;
 #X connect 29 0 27 0;
-#X connect 29 1 38 0;
+#X connect 29 1 3 0;
 #X connect 29 2 5 0;
 #X connect 29 3 9 0;
 #X connect 30 0 25 0;
@@ -881,4 +881,3 @@ nameclash is in the current library we're testing then we ignore it.
 #X connect 34 1 35 0;
 #X connect 36 0 16 0;
 #X connect 36 1 37 0;
-#X connect 38 0 4 0;
-- 
GitLab


From 5874ce783e69ce0faa7af3341e4ab94e1be288fb Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Mon, 14 Aug 2017 12:24:49 -0400
Subject: [PATCH 76/98] fix typo in windows test

---
 .gitlab-ci.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 0f971bfd5..f3cbec339 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -131,7 +131,7 @@ windows_i386_installer:
     - echo `pwd`
     - cd l2ork_addons
     - ./tar_em_up.sh -Z
-     - ../packages/win32_inno/build/bin/pd.exe -noprefs -nostdpath -nogui -noaudio ../scripts/external-tests.pd
+    - ../packages/win32_inno/build/bin/pd.exe -noprefs -nostdpath -nogui -noaudio ../scripts/external-tests.pd
   artifacts:
     expire_in: 1 day
     paths:
-- 
GitLab


From f7617d4befe96f2cc913bc689d6864b742a4f80d Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Mon, 14 Aug 2017 12:26:19 -0400
Subject: [PATCH 77/98] use OSX test numbers

---
 scripts/external-tests.pd | 13 ++++++++-----
 1 file changed, 8 insertions(+), 5 deletions(-)

diff --git a/scripts/external-tests.pd b/scripts/external-tests.pd
index c290d4a0a..926211d25 100644
--- a/scripts/external-tests.pd
+++ b/scripts/external-tests.pd
@@ -1,4 +1,4 @@
-#N canvas 3 53 659 616 12;
+#N canvas 1 53 659 616 12;
 #X obj 61 34 loadbang;
 #N canvas 107 123 756 233 load_hcs/folder_list 0;
 #X obj 357 47 inlet;
@@ -42,7 +42,7 @@ pmpd purepd rjlib rradical rtc sfruit sigmund~ stdout timestretch windowing
 #X msg 24 150 google libdir cyclone zexy creb cxc iemlib list-abs mapping
 markex maxlib memento mjlib motex osx pddp pdogg pixeltango pmpd rradical
 sigpack smlib unauthorized vbap pan freeverb~ hcs jmmmp ext13 ggee
-iem_anything ekext hexloader disis lyonpotpourri;
+iem_anything ekext disis lyonpotpourri;
 #X connect 0 0 10 0;
 #X connect 9 0 3 0;
 #X connect 10 0 12 0;
@@ -744,7 +744,7 @@ nameclash is in the current library we're testing then we ignore it.
 #X connect 1 0 2 0;
 #X connect 1 1 3 0;
 #X restore 164 359 pd set_\$0-ext;
-#N canvas 35 53 672 572 results 0;
+#N canvas 36 75 1068 572 results 0;
 #X obj 62 25 inlet;
 #X obj 235 33 r \$0-current-libdir-name;
 #X obj 146 33 r \$0-fail;
@@ -785,8 +785,11 @@ nameclash is in the current library we're testing then we ignore it.
 #X obj 335 345 s \$0-fail;
 #X obj 63 212 t b b b;
 #X obj 63 323 t a b a;
-#X obj 335 262 moses 2405;
-#X msg 335 320 only counted \$1 objects. Need 2405 to succeed;
+#X obj 335 262 moses 2275;
+#X msg 335 320 only counted \$1 objects. Need 2275 to succeed;
+#X text 432 224 Where did we get 2275? It is the number of creators
+that we found on OSX-- which does not yet ship K12 mode. (Still need
+to set up Windows tests \, however.;
 #X connect 0 0 38 0;
 #X connect 1 0 4 0;
 #X connect 2 0 3 0;
-- 
GitLab


From 438c72cef654e6efae83d16b31d685284a3b34e5 Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Mon, 14 Aug 2017 14:23:38 -0400
Subject: [PATCH 78/98] add hexmunger loading to the main loader. This is way
 simplified over the hexloader external (which will consequently be removed).
 The interface is: 1. If any characters that were illegal in a C function name
 were in the    given object name, we get a "hexmunged" symbol where each
 illegal    character is replaced with a "0x%c" where "%c" is the hex
 representation    of that illegal character. 2. If we have a "hexmunged"
 symbol, we search for a file by the newly munged    name. Currently this is
 search in addition to the normal paths-- it could    probably be searched
 instead of it but I'm not completely sure if there    are any edge cases that
 would be affected by that. 3. If the file is found, the loader searches for a
 setup routine named    "setup_hexmungedSymbol". If it's a tilde object, it
 searches for    "setup_hexmungedSymbol_tilde". (Note: normal external libs
 search for    "normalLibname_setup".)

Caveat: a lot of the obviously ad-hoc code for handling this cases in the
        external libraries just uses an "#include" directive for the entire
        C file of the original object. E.g., mtx_0x2a.c just does
        #include "../src/mtx_mul.c" with an extra setup routine that just
        calls the original one.

        So if a patch or running instance has both the [mtx_*] _and_ the
        [mtx_mul] objects, two separate libraries which essentially the
        same code and "setup" symbol will get loaded. The same is true
        for the original hexloader. I haven't had time to study the loaders
        on all Pd's platforms to figure out what the side-effects are of
        this approach
---
 pd/src/s_loader.c | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)

diff --git a/pd/src/s_loader.c b/pd/src/s_loader.c
index fe1304c63..84924cbf8 100644
--- a/pd/src/s_loader.c
+++ b/pd/src/s_loader.c
@@ -165,6 +165,25 @@ static int sys_do_load_lib(t_canvas *canvas, const char *objectname,
     if ((fd = sys_trytoopenone(path, filename, sys_dllextent2,
         dirbuf, &nameptr, MAXPDSTRING, 1)) >= 0)
             goto gotone;
+        /* for hexmunged binary external files, give it a shot
+           with the hexmunged name. This is a really ugly system
+           but we need it for all the legacy libraries that use
+           funky characters. (The only alternative is putting libdir
+           classes all in a single file and preloading, which is
+           even worse.
+           The hexmunger never worked for abstractions without recompiling,
+           so we don't and won't support hexmunged abstractions.
+        */
+    if (hexmunge)
+    {
+        if ((fd = sys_trytoopenone(path, symname+6, sys_dllextent,
+            dirbuf, &nameptr, MAXPDSTRING, 1)) >= 0)
+                goto gotone;
+            /* same, with the more generic sys_dllextent2 */
+        if ((fd = sys_trytoopenone(path, symname+6, sys_dllextent2,
+            dirbuf, &nameptr, MAXPDSTRING, 1)) >= 0)
+                goto gotone;
+    }
 #ifdef ANDROID
     /* Android libs have a 'lib' prefix, '.so' suffix and don't allow ~ */
     char libname[MAXPDSTRING] = "lib";
-- 
GitLab


From 391587f9e5e1805e8eb07423cb363255cd528726 Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Mon, 14 Aug 2017 14:53:52 -0400
Subject: [PATCH 79/98] remove external hexloader loader now that we have
 rudimentary hexloading in the main loader

---
 externals/Makefile                            | 25 +------------------
 .../org.puredata.pd-l2ork.default.plist       |  6 ++---
 packages/linux_make/default.settings          |  7 +++---
 packages/win32_inno/pd-inno.iss.in            | 15 +++++------
 4 files changed, 12 insertions(+), 41 deletions(-)

diff --git a/externals/Makefile b/externals/Makefile
index ef87240de..5e67a92a1 100644
--- a/externals/Makefile
+++ b/externals/Makefile
@@ -129,7 +129,7 @@ CXXFLAGS = $(CFLAGS)
 #
 # WARNING!  this MUST be all on one line because the automatic package
 # building scripts rely on it being that way.
-LIB_TARGETS = adaptive arraysize autotune bassemu boids bsaylor comport creb cxc cyclone disis earplug ekext ext13 fftease fluid freeverb ggee hcs iem_ambi iem_bin_ambi iemlib iemgui iemguts iem_adaptfilt iemmatrix iemxmlrpc iem_delay iem_roomsim iem_spec2 iem_tab jasch_lib loaders-hexloader loaders-libdir lyonpotpourri mapping markex maxlib mjlib moocow moonlib motex mrpeach oscx pan pdcontainer pddp pdogg plugin pmpd rjlib sigpack smlib tof unauthorized vbap windowing zexy
+LIB_TARGETS = adaptive arraysize autotune bassemu boids bsaylor comport creb cxc cyclone disis earplug ekext ext13 fftease fluid freeverb ggee hcs iem_ambi iem_bin_ambi iemlib iemgui iemguts iem_adaptfilt iemmatrix iemxmlrpc iem_delay iem_roomsim iem_spec2 iem_tab jasch_lib loaders-libdir lyonpotpourri mapping markex maxlib mjlib moocow moonlib motex mrpeach oscx pan pdcontainer pddp pdogg plugin pmpd rjlib sigpack smlib tof unauthorized vbap windowing zexy
 
 # DISABLED: flatgui
 
@@ -1108,29 +1108,6 @@ jasch_lib_clean:
 	-rm -f -- $(externals_src)/jasch_lib/*/*.bak
 	-rm -f -- $(externals_src)/jasch_lib/*/*.*~
 
-
-#------------------------------------------------------------------------------#
-# LOADERS-HEXLOADER
-LOADERS-HEXLOADER_NAME = hexloader
-LOADERS-HEXLOADER_OBJECTS := $(externals_src)/loaders/hexloader/hexloader.c
-loaders-hexloader: $(LOADERS-HEXLOADER_OBJECTS:.c=.$(EXTENSION))
-	echo $(LOADERS-HEXLOADER_OBJECTS)
-
-loaders-hexloader_install: loaders-hexloader
-	install -d $(DESTDIR)$(objectsdir)/$(LOADERS-HEXLOADER_NAME)
-	install -p $(LOADERS-HEXLOADER_OBJECTS:.c=.$(EXTENSION)) \
-		$(DESTDIR)$(objectsdir)/$(LOADERS-HEXLOADER_NAME)
-	install -p $(externals_src)/loaders/hexloader/README.txt \
-		$(externals_src)/loaders/hexloader/FAQ.txt \
-		$(DESTDIR)$(objectsdir)/$(LOADERS-HEXLOADER_NAME)
-
-loaders-hexloader_clean:
-	-rm -f -- $(LOADERS-HEXLOADER_OBJECTS:.c=.$(EXTENSION))
-	-rm -f -- $(externals_src)/loaders/hexloader/*.o
-	-rm -f -- $(externals_src)/loaders/*.bak
-	-rm -f -- $(externals_src)/loaders/hexloader/*.*~
-
-
 #------------------------------------------------------------------------------#
 # LOADERS-LIBDIR
 loaders-libdir:
diff --git a/packages/darwin_app/org.puredata.pd-l2ork.default.plist b/packages/darwin_app/org.puredata.pd-l2ork.default.plist
index 3c4d0d2fc..90c294358 100644
--- a/packages/darwin_app/org.puredata.pd-l2ork.default.plist
+++ b/packages/darwin_app/org.puredata.pd-l2ork.default.plist
@@ -73,13 +73,11 @@
 	<key>loadlib33</key>
 	<string>pdp</string>
 	<key>loadlib34</key>
-	<string>hexloader</string>
-	<key>loadlib35</key>
 	<string>disis</string>
-	<key>loadlib36</key>
+	<key>loadlib35</key>
 	<string>lyonpotpourri</string>
 	<key>nloadlib</key>
-	<string>36</string>
+	<string>35</string>
 	<key>path1</key>
 	<string>/System/Library/Fonts</string>
 	<key>path2</key>
diff --git a/packages/linux_make/default.settings b/packages/linux_make/default.settings
index 8f559a367..74d6891ad 100644
--- a/packages/linux_make/default.settings
+++ b/packages/linux_make/default.settings
@@ -33,10 +33,9 @@ loadlib29: ext13
 loadlib30: ggee
 loadlib31: iem_anything
 loadlib32: ekext
-loadlib33: hexloader
-loadlib34: disis
-loadlib35: lyonpotpourri
-nloadlib: 35
+loadlib33: disis
+loadlib34: lyonpotpourri
+nloadlib: 34
 path1: /var/lib/defoma/x-ttcidfont-conf.d/dirs/TrueType
 path2: ~/pd-l2ork-externals
 path3: ~/L2Ork/PD/Abstractions
diff --git a/packages/win32_inno/pd-inno.iss.in b/packages/win32_inno/pd-inno.iss.in
index f343538e3..6b6733c04 100755
--- a/packages/win32_inno/pd-inno.iss.in
+++ b/packages/win32_inno/pd-inno.iss.in
@@ -177,17 +177,14 @@ Root: HKCU; SubKey: SOFTWARE\Purr-Data; ValueType: string; ValueName: loadlib31;
 Root: HKLM; SubKey: SOFTWARE\Purr-Data; ValueType: string; ValueName: loadlib32; ValueData: ekext; Tasks: libs; Flags: uninsdeletekey
 Root: HKCU; SubKey: SOFTWARE\Purr-Data; ValueType: string; ValueName: loadlib32; ValueData: ekext; Tasks: libs; Flags: uninsdeletekey
 
-Root: HKLM; SubKey: SOFTWARE\Purr-Data; ValueType: string; ValueName: loadlib33; ValueData: hexloader; Tasks: libs; Flags: uninsdeletekey
-Root: HKCU; SubKey: SOFTWARE\Purr-Data; ValueType: string; ValueName: loadlib33; ValueData: hexloader; Tasks: libs; Flags: uninsdeletekey
+Root: HKLM; SubKey: SOFTWARE\Purr-Data; ValueType: string; ValueName: loadlib33; ValueData: disis; Tasks: libs; Flags: uninsdeletekey
+Root: HKCU; SubKey: SOFTWARE\Purr-Data; ValueType: string; ValueName: loadlib33; ValueData: disis; Tasks: libs; Flags: uninsdeletekey
 
-Root: HKLM; SubKey: SOFTWARE\Purr-Data; ValueType: string; ValueName: loadlib34; ValueData: disis; Tasks: libs; Flags: uninsdeletekey
-Root: HKCU; SubKey: SOFTWARE\Purr-Data; ValueType: string; ValueName: loadlib34; ValueData: disis; Tasks: libs; Flags: uninsdeletekey
+Root: HKLM; SubKey: SOFTWARE\Purr-Data; ValueType: string; ValueName: loadlib34; ValueData: lyonpotpourri; Tasks: libs; Flags: uninsdeletekey
+Root: HKCU; SubKey: SOFTWARE\Purr-Data; ValueType: string; ValueName: loadlib34; ValueData: lyonpotpourri; Tasks: libs; Flags: uninsdeletekey
 
-Root: HKLM; SubKey: SOFTWARE\Purr-Data; ValueType: string; ValueName: loadlib35; ValueData: lyonpotpourri; Tasks: libs; Flags: uninsdeletekey
-Root: HKCU; SubKey: SOFTWARE\Purr-Data; ValueType: string; ValueName: loadlib35; ValueData: lyonpotpourri; Tasks: libs; Flags: uninsdeletekey
-
-Root: HKLM; SubKey: SOFTWARE\Purr-Data; ValueType: string; ValueName: nloadlib; ValueData: 35; Tasks: libs; Flags: uninsdeletekey
-Root: HKCU; SubKey: SOFTWARE\Purr-Data; ValueType: string; ValueName: nloadlib; ValueData: 35; Tasks: libs; Flags: uninsdeletekey
+Root: HKLM; SubKey: SOFTWARE\Purr-Data; ValueType: string; ValueName: nloadlib; ValueData: 34; Tasks: libs; Flags: uninsdeletekey
+Root: HKCU; SubKey: SOFTWARE\Purr-Data; ValueType: string; ValueName: nloadlib; ValueData: 34; Tasks: libs; Flags: uninsdeletekey
 
 Root: HKLM; SubKey: SOFTWARE\Purr-Data; ValueType: none; ValueName: loadlib36; Tasks: libs; Flags: uninsdeletekey
 Root: HKCU; SubKey: SOFTWARE\Purr-Data; ValueType: none; ValueName: loadlib36; Tasks: libs; Flags: uninsdeletekey
-- 
GitLab


From 6f3d7bbb30f81ae5c28b960ca04ee717f619b3e3 Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Mon, 14 Aug 2017 14:55:02 -0400
Subject: [PATCH 80/98] update iemmatrix aliases to use the simplified
 "setup_mungedName[_tilde]" format

---
 externals/iem/iemmatrix/alias/mtx_0x21.c     | 2 +-
 externals/iem/iemmatrix/alias/mtx_0x210x3d.c | 2 +-
 externals/iem/iemmatrix/alias/mtx_0x26.c     | 2 +-
 externals/iem/iemmatrix/alias/mtx_0x260x26.c | 2 +-
 externals/iem/iemmatrix/alias/mtx_0x2a.c     | 2 +-
 externals/iem/iemmatrix/alias/mtx_0x2a0x7e.c | 2 +-
 externals/iem/iemmatrix/alias/mtx_0x2b.c     | 2 +-
 externals/iem/iemmatrix/alias/mtx_0x2d.c     | 2 +-
 externals/iem/iemmatrix/alias/mtx_0x2e0x2a.c | 2 +-
 externals/iem/iemmatrix/alias/mtx_0x2e0x2f.c | 2 +-
 externals/iem/iemmatrix/alias/mtx_0x2e0x5e.c | 2 +-
 externals/iem/iemmatrix/alias/mtx_0x2f.c     | 2 +-
 externals/iem/iemmatrix/alias/mtx_0x3a.c     | 2 +-
 externals/iem/iemmatrix/alias/mtx_0x3c.c     | 2 +-
 externals/iem/iemmatrix/alias/mtx_0x3c0x3c.c | 2 +-
 externals/iem/iemmatrix/alias/mtx_0x3c0x3d.c | 2 +-
 externals/iem/iemmatrix/alias/mtx_0x3d0x3d.c | 2 +-
 externals/iem/iemmatrix/alias/mtx_0x3e.c     | 2 +-
 externals/iem/iemmatrix/alias/mtx_0x3e0x3d.c | 2 +-
 externals/iem/iemmatrix/alias/mtx_0x3e0x3e.c | 2 +-
 externals/iem/iemmatrix/alias/mtx_0x7c.c     | 2 +-
 externals/iem/iemmatrix/alias/mtx_0x7c0x7c.c | 2 +-
 22 files changed, 22 insertions(+), 22 deletions(-)

diff --git a/externals/iem/iemmatrix/alias/mtx_0x21.c b/externals/iem/iemmatrix/alias/mtx_0x21.c
index 2a641b3dd..91d16b776 100644
--- a/externals/iem/iemmatrix/alias/mtx_0x21.c
+++ b/externals/iem/iemmatrix/alias/mtx_0x21.c
@@ -1,6 +1,6 @@
 // alias for [mtx_!]
 #include "../src/mtx_not.c"
-void mtx_0x21_setup()
+void setup_mtx_0x21()
 {
   mtx_not_setup();
 }
diff --git a/externals/iem/iemmatrix/alias/mtx_0x210x3d.c b/externals/iem/iemmatrix/alias/mtx_0x210x3d.c
index cb2094b0f..ff24ba636 100644
--- a/externals/iem/iemmatrix/alias/mtx_0x210x3d.c
+++ b/externals/iem/iemmatrix/alias/mtx_0x210x3d.c
@@ -1,6 +1,6 @@
 // alias for [mtx_!=]
 #include "../src/mtx_neq.c"
-void mtx_0x210x3d_setup()
+void setup_mtx_0x210x3d()
 {
   mtx_neq_setup();
 }
diff --git a/externals/iem/iemmatrix/alias/mtx_0x26.c b/externals/iem/iemmatrix/alias/mtx_0x26.c
index 1492824c7..0339b3c91 100644
--- a/externals/iem/iemmatrix/alias/mtx_0x26.c
+++ b/externals/iem/iemmatrix/alias/mtx_0x26.c
@@ -1,6 +1,6 @@
 // alias for [mtx_&]
 #include "../src/mtx_bitand.c"
-void mtx_0x26_setup()
+void setup_mtx_0x26()
 {
   mtx_bitand_setup();
 }
diff --git a/externals/iem/iemmatrix/alias/mtx_0x260x26.c b/externals/iem/iemmatrix/alias/mtx_0x260x26.c
index c009a9902..b230babf8 100644
--- a/externals/iem/iemmatrix/alias/mtx_0x260x26.c
+++ b/externals/iem/iemmatrix/alias/mtx_0x260x26.c
@@ -1,6 +1,6 @@
 // alias for [mtx_&&]
 #include "../src/mtx_and.c"
-void mtx_0x260x26_setup()
+void setup_mtx_0x260x26()
 {
   mtx_and_setup();
 }
diff --git a/externals/iem/iemmatrix/alias/mtx_0x2a.c b/externals/iem/iemmatrix/alias/mtx_0x2a.c
index 06addb53b..e402462ab 100644
--- a/externals/iem/iemmatrix/alias/mtx_0x2a.c
+++ b/externals/iem/iemmatrix/alias/mtx_0x2a.c
@@ -1,6 +1,6 @@
 // alias for [mtx_*]
 #include "../src/mtx_mul.c"
-void mtx_0x2a_setup()
+void setup_mtx_0x2a()
 {
   mtx_mul_setup();
 }
diff --git a/externals/iem/iemmatrix/alias/mtx_0x2a0x7e.c b/externals/iem/iemmatrix/alias/mtx_0x2a0x7e.c
index 5f9913794..13b01c55e 100644
--- a/externals/iem/iemmatrix/alias/mtx_0x2a0x7e.c
+++ b/externals/iem/iemmatrix/alias/mtx_0x2a0x7e.c
@@ -1,6 +1,6 @@
 // alias for [mtx_*~]
 #include "../src/mtx_mul~.c"
-void mtx_0x2a0x7e_setup()
+void setup_mtx_0x2a0x7e()
 {
   mtx_mul_tilde_setup();
 }
diff --git a/externals/iem/iemmatrix/alias/mtx_0x2b.c b/externals/iem/iemmatrix/alias/mtx_0x2b.c
index 4e2cc1f0c..f34fcb3f7 100644
--- a/externals/iem/iemmatrix/alias/mtx_0x2b.c
+++ b/externals/iem/iemmatrix/alias/mtx_0x2b.c
@@ -1,6 +1,6 @@
 // alias for [mtx_+]
 #include "../src/mtx_add.c"
-void mtx_0x2b_setup()
+void setup_mtx_0x2b()
 {
   mtx_add_setup();
 }
diff --git a/externals/iem/iemmatrix/alias/mtx_0x2d.c b/externals/iem/iemmatrix/alias/mtx_0x2d.c
index b9a4d09c6..d5585eaff 100644
--- a/externals/iem/iemmatrix/alias/mtx_0x2d.c
+++ b/externals/iem/iemmatrix/alias/mtx_0x2d.c
@@ -1,6 +1,6 @@
 // alias for [mtx_-]
 #include "../src/mtx_sub.c"
-void mtx_0x2d_setup()
+void setup_mtx_0x2d()
 {
   mtx_sub_setup();
 }
diff --git a/externals/iem/iemmatrix/alias/mtx_0x2e0x2a.c b/externals/iem/iemmatrix/alias/mtx_0x2e0x2a.c
index a6d30d318..439d6d2e4 100644
--- a/externals/iem/iemmatrix/alias/mtx_0x2e0x2a.c
+++ b/externals/iem/iemmatrix/alias/mtx_0x2e0x2a.c
@@ -1,6 +1,6 @@
 // alias for [mtx_.*]
 #include "../src/mtx_mul.c"
-void mtx_0x2e0x2a_setup()
+void setup_mtx_0x2e0x2a()
 {
   mtx_mul_setup();
 }
diff --git a/externals/iem/iemmatrix/alias/mtx_0x2e0x2f.c b/externals/iem/iemmatrix/alias/mtx_0x2e0x2f.c
index d3c5ca3b5..a5f5a4869 100644
--- a/externals/iem/iemmatrix/alias/mtx_0x2e0x2f.c
+++ b/externals/iem/iemmatrix/alias/mtx_0x2e0x2f.c
@@ -1,5 +1,5 @@
 #include "../src/mtx_mul.c"
-void mtx_0x2e0x2f_setup()
+void setup_mtx_0x2e0x2f()
 {
   mtx_div_setup();
 }
diff --git a/externals/iem/iemmatrix/alias/mtx_0x2e0x5e.c b/externals/iem/iemmatrix/alias/mtx_0x2e0x5e.c
index a7ae2acc7..df2532f10 100644
--- a/externals/iem/iemmatrix/alias/mtx_0x2e0x5e.c
+++ b/externals/iem/iemmatrix/alias/mtx_0x2e0x5e.c
@@ -1,6 +1,6 @@
 // alias for [mtx.^]
 #include "../src/mtx_pow.c"
-void mtx_0x2e0x5e_setup()
+void setup_mtx_0x2e0x5e()
 {
   mtx_pow_setup();
 }
diff --git a/externals/iem/iemmatrix/alias/mtx_0x2f.c b/externals/iem/iemmatrix/alias/mtx_0x2f.c
index 7856d0b7e..53549d671 100644
--- a/externals/iem/iemmatrix/alias/mtx_0x2f.c
+++ b/externals/iem/iemmatrix/alias/mtx_0x2f.c
@@ -1,5 +1,5 @@
 #include "../src/mtx_mul.c"
-void mtx_0x2f_setup()
+void setup_mtx_0x2f()
 {
   mtx_div_setup();
 }
diff --git a/externals/iem/iemmatrix/alias/mtx_0x3a.c b/externals/iem/iemmatrix/alias/mtx_0x3a.c
index e909adb94..41e13b112 100644
--- a/externals/iem/iemmatrix/alias/mtx_0x3a.c
+++ b/externals/iem/iemmatrix/alias/mtx_0x3a.c
@@ -1,6 +1,6 @@
 // alias for [mtx_:]
 #include "../src/mtx_colon.c"
-void mtx_0x3a_setup()
+void setup_mtx_0x3a()
 {
   mtx_colon_setup();
 }
diff --git a/externals/iem/iemmatrix/alias/mtx_0x3c.c b/externals/iem/iemmatrix/alias/mtx_0x3c.c
index e852937b3..2e589a0bf 100644
--- a/externals/iem/iemmatrix/alias/mtx_0x3c.c
+++ b/externals/iem/iemmatrix/alias/mtx_0x3c.c
@@ -1,6 +1,6 @@
 // alias for [mtx_<]
 #include "../src/mtx_lt.c"
-void mtx_0x3c_setup()
+void setup_mtx_0x3c()
 {
   mtx_lt_setup();
 }
diff --git a/externals/iem/iemmatrix/alias/mtx_0x3c0x3c.c b/externals/iem/iemmatrix/alias/mtx_0x3c0x3c.c
index 6f57f5a94..2bb1f3730 100644
--- a/externals/iem/iemmatrix/alias/mtx_0x3c0x3c.c
+++ b/externals/iem/iemmatrix/alias/mtx_0x3c0x3c.c
@@ -1,6 +1,6 @@
 // alias for [mtx_<<]
 #include "../src/mtx_bitleft.c"
-void mtx_0x3c0x3c_setup()
+void setup_mtx_0x3c0x3c()
 {
   mtx_bitleft_setup();
 }
diff --git a/externals/iem/iemmatrix/alias/mtx_0x3c0x3d.c b/externals/iem/iemmatrix/alias/mtx_0x3c0x3d.c
index a08d5797f..6473e4bca 100644
--- a/externals/iem/iemmatrix/alias/mtx_0x3c0x3d.c
+++ b/externals/iem/iemmatrix/alias/mtx_0x3c0x3d.c
@@ -1,6 +1,6 @@
 // alias for [mtx_<=]
 #include "../src/mtx_le.c"
-void mtx_0x3c0x3d_setup()
+void setup_mtx_0x3c0x3d()
 {
   mtx_le_setup();
 }
diff --git a/externals/iem/iemmatrix/alias/mtx_0x3d0x3d.c b/externals/iem/iemmatrix/alias/mtx_0x3d0x3d.c
index 3acf67ee7..04edccf9e 100644
--- a/externals/iem/iemmatrix/alias/mtx_0x3d0x3d.c
+++ b/externals/iem/iemmatrix/alias/mtx_0x3d0x3d.c
@@ -1,6 +1,6 @@
 // alias for [mtx_==]
 #include "../src/mtx_eq.c"
-void mtx_0x3d0x3d_setup()
+void setup_mtx_0x3d0x3d()
 {
   mtx_eq_setup();
 }
diff --git a/externals/iem/iemmatrix/alias/mtx_0x3e.c b/externals/iem/iemmatrix/alias/mtx_0x3e.c
index 2ce34b145..ce11e3729 100644
--- a/externals/iem/iemmatrix/alias/mtx_0x3e.c
+++ b/externals/iem/iemmatrix/alias/mtx_0x3e.c
@@ -1,6 +1,6 @@
 // alias for [mtx_>]
 #include "../src/mtx_gt.c"
-void mtx_0x3e_setup()
+void setup_mtx_0x3e()
 {
   mtx_gt_setup();
 }
diff --git a/externals/iem/iemmatrix/alias/mtx_0x3e0x3d.c b/externals/iem/iemmatrix/alias/mtx_0x3e0x3d.c
index 9512b6f9f..ab08dcb5b 100644
--- a/externals/iem/iemmatrix/alias/mtx_0x3e0x3d.c
+++ b/externals/iem/iemmatrix/alias/mtx_0x3e0x3d.c
@@ -1,6 +1,6 @@
 // alias for [mtx_>=]
 #include "../src/mtx_ge.c"
-void mtx_0x3e0x3d_setup()
+void setup_mtx_0x3e0x3d()
 {
   mtx_ge_setup();
 }
diff --git a/externals/iem/iemmatrix/alias/mtx_0x3e0x3e.c b/externals/iem/iemmatrix/alias/mtx_0x3e0x3e.c
index 85011e86e..211a7f688 100644
--- a/externals/iem/iemmatrix/alias/mtx_0x3e0x3e.c
+++ b/externals/iem/iemmatrix/alias/mtx_0x3e0x3e.c
@@ -1,6 +1,6 @@
 // alias for [mtx_>>]
 #include "../src/mtx_bitright.c"
-void mtx_0x3e0x3e_setup()
+void setup_mtx_0x3e0x3e()
 {
   mtx_bitright_setup();
 }
diff --git a/externals/iem/iemmatrix/alias/mtx_0x7c.c b/externals/iem/iemmatrix/alias/mtx_0x7c.c
index 8280fcd96..99e030291 100644
--- a/externals/iem/iemmatrix/alias/mtx_0x7c.c
+++ b/externals/iem/iemmatrix/alias/mtx_0x7c.c
@@ -1,6 +1,6 @@
 // alias for [mtx_|]
 #include "../src/mtx_bitor.c"
-void mtx_0x7c_setup()
+void setup_mtx_0x7c()
 {
   mtx_bitor_setup();
 }
diff --git a/externals/iem/iemmatrix/alias/mtx_0x7c0x7c.c b/externals/iem/iemmatrix/alias/mtx_0x7c0x7c.c
index e8a2243d4..e7aed8425 100644
--- a/externals/iem/iemmatrix/alias/mtx_0x7c0x7c.c
+++ b/externals/iem/iemmatrix/alias/mtx_0x7c0x7c.c
@@ -1,6 +1,6 @@
 // alias for [mtx_||]
 #include "../src/mtx_or.c"
-void mtx_0x7c0x7c_setup()
+void setup_mtx_0x7c0x7c()
 {
   mtx_or_setup();
 }
-- 
GitLab


From 177e7cd6312bb01737929582699398ef37997193 Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Mon, 14 Aug 2017 16:37:48 -0400
Subject: [PATCH 81/98] update markex to use the simplified hexmunger

---
 externals/markex/Makefile     | 2 +-
 externals/markex/v0x2a.c      | 5 +++++
 externals/markex/v0x2f.c      | 5 +++++
 externals/markex/vector0x2a.c | 9 ---------
 externals/markex/vector0x2f.c | 1 -
 5 files changed, 11 insertions(+), 11 deletions(-)
 create mode 100644 externals/markex/v0x2a.c
 create mode 100644 externals/markex/v0x2f.c

diff --git a/externals/markex/Makefile b/externals/markex/Makefile
index de11f8a48..11b3131e2 100644
--- a/externals/markex/Makefile
+++ b/externals/markex/Makefile
@@ -5,7 +5,7 @@ LIBRARY_NAME = markex
 
 # add your .c source files, one object per file, to the SOURCES
 # variable, help files will be included automatically
-SOURCES = abs~.c alternate.c average.c counter.c hsv2rgb.c invert.c multiselect.c oneshot.c randomF.c reson~.c rgb2hsv.c strcat.c tripleLine.c tripleRand.c vector+.c vector-.c vector0x2a.c vector0x2f.c vectorabs.c vectorpack.c
+SOURCES = abs~.c alternate.c average.c counter.c hsv2rgb.c invert.c multiselect.c oneshot.c randomF.c reson~.c rgb2hsv.c strcat.c tripleLine.c tripleRand.c vector+.c vector-.c vector0x2a.c v0x2a.c vector0x2f.c v0x2f.c vectorabs.c vectorpack.c
 
 # list all pd objects (i.e. myobject.pd) files here, and their helpfiles will
 # be included automatically
diff --git a/externals/markex/v0x2a.c b/externals/markex/v0x2a.c
new file mode 100644
index 000000000..a62d0aa66
--- /dev/null
+++ b/externals/markex/v0x2a.c
@@ -0,0 +1,5 @@
+#include "vector0x2a.c"
+
+void setup_v0x2a(void){
+  vectorMult_setup();
+}
diff --git a/externals/markex/v0x2f.c b/externals/markex/v0x2f.c
new file mode 100644
index 000000000..591f03932
--- /dev/null
+++ b/externals/markex/v0x2f.c
@@ -0,0 +1,5 @@
+#include "vector0x2f.c"
+
+void setup_v0x2f(void){
+  vectorDiv_setup();
+}
diff --git a/externals/markex/vector0x2a.c b/externals/markex/vector0x2a.c
index 32fcf0e4b..1e3db7a3a 100644
--- a/externals/markex/vector0x2a.c
+++ b/externals/markex/vector0x2a.c
@@ -62,12 +62,3 @@ static void vectorMult_setup(void)
 void setup_vector0x2a(void){
   vectorMult_setup();
 }
-void vector0x2a_setup(void){
-  vectorMult_setup();
-}
-void setup_v0x2a(void){
-  vectorMult_setup();
-}
-void v0x2a_setup(void){
-  vectorMult_setup();
-}
diff --git a/externals/markex/vector0x2f.c b/externals/markex/vector0x2f.c
index 55f744438..a8f6d0399 100644
--- a/externals/markex/vector0x2f.c
+++ b/externals/markex/vector0x2f.c
@@ -61,5 +61,4 @@ static void vectorDiv_setup(void)
 
 void setup_vector0x2f(void) { vectorDiv_setup(); }
 void vector0x2f_setup(void) { vectorDiv_setup(); }
-void setup_v0x2f(void)      { vectorDiv_setup(); }
 void v0x2f_setup(void)      { vectorDiv_setup(); }
-- 
GitLab


From 99e673e0d9ad613e31af7fa5675f4f0551af6248 Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Mon, 14 Aug 2017 18:05:33 -0400
Subject: [PATCH 82/98] change zexy alias files to use the simplified hexmunger

---
 externals/zexy/src/{0x260x260x7e.c => 0x260x26_tilde.c} | 2 +-
 externals/zexy/src/{0x3c0x7e.c => 0x3c_tilde.c}         | 2 +-
 externals/zexy/src/{0x3d0x3d0x7e.c => 0x3d0x3d_tilde.c} | 2 +-
 externals/zexy/src/{0x3e0x7e.c => 0x3e_tilde.c}         | 2 +-
 externals/zexy/src/{0x7c0x7c0x7e.c => 0x7c0x7c_tilde.c} | 2 +-
 5 files changed, 5 insertions(+), 5 deletions(-)
 rename externals/zexy/src/{0x260x260x7e.c => 0x260x26_tilde.c} (99%)
 rename externals/zexy/src/{0x3c0x7e.c => 0x3c_tilde.c} (99%)
 rename externals/zexy/src/{0x3d0x3d0x7e.c => 0x3d0x3d_tilde.c} (99%)
 rename externals/zexy/src/{0x3e0x7e.c => 0x3e_tilde.c} (99%)
 rename externals/zexy/src/{0x7c0x7c0x7e.c => 0x7c0x7c_tilde.c} (99%)

diff --git a/externals/zexy/src/0x260x260x7e.c b/externals/zexy/src/0x260x26_tilde.c
similarity index 99%
rename from externals/zexy/src/0x260x260x7e.c
rename to externals/zexy/src/0x260x26_tilde.c
index 71dcd5db4..cfea701f3 100644
--- a/externals/zexy/src/0x260x260x7e.c
+++ b/externals/zexy/src/0x260x26_tilde.c
@@ -312,6 +312,6 @@ void setup_0x260x260x7e(void)
 #ifndef ZEXY_LIBRARY
 void setup(void)
 {
-  setup_0x260x260x7e();
+  setup_0x260x26_tilde();
 }
 #endif
diff --git a/externals/zexy/src/0x3c0x7e.c b/externals/zexy/src/0x3c_tilde.c
similarity index 99%
rename from externals/zexy/src/0x3c0x7e.c
rename to externals/zexy/src/0x3c_tilde.c
index 7624464b6..cea34b368 100644
--- a/externals/zexy/src/0x3c0x7e.c
+++ b/externals/zexy/src/0x3c_tilde.c
@@ -265,6 +265,6 @@ void setup_0x3c0x7e(void)
 #ifndef ZEXY_LIBRARY
 void setup(void)
 {
-  setup_0x3c0x7e();
+  setup_0x3c_tilde();
 }
 #endif
diff --git a/externals/zexy/src/0x3d0x3d0x7e.c b/externals/zexy/src/0x3d0x3d_tilde.c
similarity index 99%
rename from externals/zexy/src/0x3d0x3d0x7e.c
rename to externals/zexy/src/0x3d0x3d_tilde.c
index 266d8ed4a..4622c7914 100644
--- a/externals/zexy/src/0x3d0x3d0x7e.c
+++ b/externals/zexy/src/0x3d0x3d_tilde.c
@@ -265,6 +265,6 @@ void setup_0x3d0x3d0x7e(void)
 #ifndef ZEXY_LIBRARY
 void setup(void)
 {
-  setup_0x3d0x3d0x7e();
+  setup_0x3d0x3d_tilde();
 }
 #endif
diff --git a/externals/zexy/src/0x3e0x7e.c b/externals/zexy/src/0x3e_tilde.c
similarity index 99%
rename from externals/zexy/src/0x3e0x7e.c
rename to externals/zexy/src/0x3e_tilde.c
index d0d1b07d8..c3736a347 100644
--- a/externals/zexy/src/0x3e0x7e.c
+++ b/externals/zexy/src/0x3e_tilde.c
@@ -269,6 +269,6 @@ void setup_0x3e0x7e(void)
 #ifndef ZEXY_LIBRARY
 void setup(void)
 {
-  setup_0x3e0x7e();
+  setup_0x3e_tilde();
 }
 #endif
diff --git a/externals/zexy/src/0x7c0x7c0x7e.c b/externals/zexy/src/0x7c0x7c_tilde.c
similarity index 99%
rename from externals/zexy/src/0x7c0x7c0x7e.c
rename to externals/zexy/src/0x7c0x7c_tilde.c
index fa5504f2e..58376d434 100644
--- a/externals/zexy/src/0x7c0x7c0x7e.c
+++ b/externals/zexy/src/0x7c0x7c_tilde.c
@@ -284,6 +284,6 @@ void setup_0x7c0x7c0x7e(void)
 #ifndef ZEXY_LIBRARY
 void setup(void)
 {
-  setup_0x7c0x7c0x7e();
+  setup_0x7c0x7c_tilde();
 }
 #endif
-- 
GitLab


From a5c943482dea248f41d6f7d6f6d7d03c4205cd88 Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Mon, 14 Aug 2017 18:06:27 -0400
Subject: [PATCH 83/98] handle special case of trailing "/" or "/~" in legacy
 external classnames

---
 pd/src/s_loader.c | 23 ++++++++++++++++++++++-
 1 file changed, 22 insertions(+), 1 deletion(-)

diff --git a/pd/src/s_loader.c b/pd/src/s_loader.c
index 84924cbf8..a3b7fa454 100644
--- a/pd/src/s_loader.c
+++ b/pd/src/s_loader.c
@@ -88,6 +88,27 @@ void sys_putonloadlist(const char *classname)
     /* post("put on list %s", classname); */
 }
 
+static char *get_last_file_separator(const char *objectname)
+{
+    char *c = strrchr(objectname, '/');
+    if (c)
+    {
+        char *ret = c;
+            /* if we're the last character before the null terminator,
+               OR if the end of the string is "/~", let's interpret the
+               slash as part of the class name.
+            */
+        if (c[1] == '\0' || (c[1] == '~' && c[2] == '\0'))
+        {
+            *c = '\0';
+            ret = strrchr(objectname, '/');
+            *c = '/';
+        }
+        return ret;
+    }
+    return NULL;
+}
+
 void class_set_extern_dir(t_symbol *s);
 
 static int sys_do_load_abs(t_canvas *canvas, const char *objectname,
@@ -108,7 +129,7 @@ static int sys_do_load_lib(t_canvas *canvas, const char *objectname,
            but we have already tried all paths */
     if(!path)return (0);
 
-    if ((classname = strrchr(objectname, '/')))
+    if ((classname = get_last_file_separator(objectname)))
         classname++;
     else classname = objectname;
     for (i = 0, cnameptr = classname; i < MAXPDSTRING-7 && *cnameptr;
-- 
GitLab


From 6b73859cc87c739a29c8f358e2a2ee367589b7dc Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Mon, 14 Aug 2017 18:28:56 -0400
Subject: [PATCH 84/98] fix alias names in Makefile.am so they get picked up by
 the hexmunger

---
 externals/zexy/src/Makefile.am | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/externals/zexy/src/Makefile.am b/externals/zexy/src/Makefile.am
index 06f44087e..399eb3d0b 100644
--- a/externals/zexy/src/Makefile.am
+++ b/externals/zexy/src/Makefile.am
@@ -24,12 +24,12 @@ pkglib_LTLIBRARIES+=zexy.la
 endif LIBRARY
 if SINGLEOBJECTS
 pkglib_LTLIBRARIES+= \
-	0x260x260x7e.la \
+	0x260x26_tilde.la \
 	0x2e.la \
-	0x3c0x7e.la \
-	0x3d0x3d0x7e.la \
-	0x3e0x7e.la \
-	0x7c0x7c0x7e.la \
+	0x3c_tilde.la \
+	0x3d0x3d_tilde.la \
+	0x3e_tilde.la \
+	0x7c0x7c_tilde.la \
 	any2list.la \
 	a2l.la \
 	abs~.la \
-- 
GitLab


From 3a4e33150898d82698feae7764d22f9a65021703 Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Mon, 14 Aug 2017 19:22:44 -0400
Subject: [PATCH 85/98] add missing help files for aliases (don't think they
 are used, but they are required by the Makefile)

---
 externals/markex/v0x2a-help.pd | 22 ++++++++++++++++++++++
 externals/markex/v0x2f-help.pd | 22 ++++++++++++++++++++++
 2 files changed, 44 insertions(+)
 create mode 100644 externals/markex/v0x2a-help.pd
 create mode 100644 externals/markex/v0x2f-help.pd

diff --git a/externals/markex/v0x2a-help.pd b/externals/markex/v0x2a-help.pd
new file mode 100644
index 000000000..c5b70cbf7
--- /dev/null
+++ b/externals/markex/v0x2a-help.pd
@@ -0,0 +1,22 @@
+#N canvas 382 194 450 300 10;
+#N canvas 247 443 494 344 META 0;
+#X text 12 135 AUTHOR Mark Danks;
+#X text 12 25 LICENSE GPL v2;
+#X text 12 5 KEYWORDS control vector;
+#X text 12 165 HELP_PATCH_AUTHORS "pd meta" information added by Jonathan
+Wilkes for Pd version 0.42. \, helppatch by IOhannes m zmölnig;
+#X text 13 76 INLET_0 list;
+#X text 13 116 OUTLET_0 list;
+#X text 13 96 INLET_1 float;
+#X text 12 45 DESCRIPTION multiplies a vector by a number;
+#X restore 390 271 pd META;
+#X msg 64 86 1 2 3;
+#X msg 175 86 10;
+#X text 52 248 a "vector" is simply a list of numbers.;
+#X text 27 25 MarkEx vector operation: multiply a vector by a factor
+;
+#X obj 64 146 print vector*;
+#X obj 64 116 vector* 42;
+#X connect 1 0 6 0;
+#X connect 2 0 6 1;
+#X connect 6 0 5 0;
diff --git a/externals/markex/v0x2f-help.pd b/externals/markex/v0x2f-help.pd
new file mode 100644
index 000000000..62a4d1a3d
--- /dev/null
+++ b/externals/markex/v0x2f-help.pd
@@ -0,0 +1,22 @@
+#N canvas 369 150 450 300 10;
+#N canvas 249 435 494 344 META 0;
+#X text 12 135 AUTHOR Mark Danks;
+#X text 12 25 LICENSE GPL v2;
+#X text 12 5 KEYWORDS control vector;
+#X text 12 165 HELP_PATCH_AUTHORS "pd meta" information added by Jonathan
+Wilkes for Pd version 0.42. \, helppatch by IOhannes m zmölnig;
+#X text 13 76 INLET_0 list;
+#X text 13 116 OUTLET_0 list;
+#X text 13 96 INLET_1 float;
+#X text 12 45 DESCRIPTION divides a vector by a number;
+#X restore 390 271 pd META;
+#X msg 175 86 10;
+#X text 52 248 a "vector" is simply a list of numbers.;
+#X text 27 25 MarkEx vector operation: divide a vector by a factor
+;
+#X obj 64 116 vector/ 42;
+#X msg 64 86 1 42 84;
+#X obj 64 146 print vector/;
+#X connect 1 0 4 1;
+#X connect 4 0 6 0;
+#X connect 5 0 4 0;
-- 
GitLab


From 397571d03ca1d874c094336fce12cc4883ba72b3 Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Mon, 14 Aug 2017 21:54:25 -0400
Subject: [PATCH 86/98] change setup symbol in "||~" to the new format, remove
 unnecessary symlinks for aliased zexy classes from externals/Makefile

---
 externals/Makefile                  | 40 ++++++++++++++---------------
 externals/zexy/src/0x7c0x7c_tilde.c |  2 +-
 2 files changed, 21 insertions(+), 21 deletions(-)

diff --git a/externals/Makefile b/externals/Makefile
index 5e67a92a1..10554ccf4 100644
--- a/externals/Makefile
+++ b/externals/Makefile
@@ -1834,26 +1834,26 @@ zexy_install: zexy
 # add missing aliases
 # can't do these on Windows because FAT, NTFS don't support these chars in filenames
 # on Windows, these are faked in by loading them as libs
-ifneq ($(OS_NAME),windows)
-	test -e $(DESTDIR)$(objectsdir)/$(ZEXY_NAME)/..$(EXTENSION) || \
-		ln -s 0x2e.$(EXTENSION) \
-			$(DESTDIR)$(objectsdir)/$(ZEXY_NAME)/..$(EXTENSION)
-	test -e '$(DESTDIR)$(objectsdir)/$(ZEXY_NAME)/&&~.$(EXTENSION)' || \
-		ln -s 0x260x260x7e.$(EXTENSION) \
-			'$(DESTDIR)$(objectsdir)/$(ZEXY_NAME)/&&~.$(EXTENSION)'
-	test -e '$(DESTDIR)$(objectsdir)/$(ZEXY_NAME)/<~.$(EXTENSION)' || \
-		ln -s 0x3c0x7e.$(EXTENSION) \
-			'$(DESTDIR)$(objectsdir)/$(ZEXY_NAME)/<~.$(EXTENSION)'
-	test -e '$(DESTDIR)$(objectsdir)/$(ZEXY_NAME)/==~.$(EXTENSION)' || \
-		ln -s 0x3d0x3d0x7e.$(EXTENSION) \
-			'$(DESTDIR)$(objectsdir)/$(ZEXY_NAME)/==~.$(EXTENSION)'
-	test -e '$(DESTDIR)$(objectsdir)/$(ZEXY_NAME)/>~.$(EXTENSION)' || \
-		ln -s 0x3e0x7e.$(EXTENSION) \
-			'$(DESTDIR)$(objectsdir)/$(ZEXY_NAME)/>~.$(EXTENSION)'
-	test -e '$(DESTDIR)$(objectsdir)/$(ZEXY_NAME)/||~.$(EXTENSION)' || \
-		ln -s 0x7c0x7c0x7e.$(EXTENSION) \
-			'$(DESTDIR)$(objectsdir)/$(ZEXY_NAME)/||~.$(EXTENSION)'
-endif
+#ifneq ($(OS_NAME),windows)
+#	test -e $(DESTDIR)$(objectsdir)/$(ZEXY_NAME)/..$(EXTENSION) || \
+#		ln -s 0x2e.$(EXTENSION) \
+#			$(DESTDIR)$(objectsdir)/$(ZEXY_NAME)/..$(EXTENSION)
+#	test -e '$(DESTDIR)$(objectsdir)/$(ZEXY_NAME)/&&~.$(EXTENSION)' || \
+#		ln -s 0x260x26_tilde.$(EXTENSION) \
+#			'$(DESTDIR)$(objectsdir)/$(ZEXY_NAME)/&&~.$(EXTENSION)'
+#	test -e '$(DESTDIR)$(objectsdir)/$(ZEXY_NAME)/<~.$(EXTENSION)' || \
+#		ln -s 0x3c_tilde.$(EXTENSION) \
+#			'$(DESTDIR)$(objectsdir)/$(ZEXY_NAME)/<~.$(EXTENSION)'
+#	test -e '$(DESTDIR)$(objectsdir)/$(ZEXY_NAME)/==~.$(EXTENSION)' || \
+#		ln -s 0x3d0x3d_tilde.$(EXTENSION) \
+#			'$(DESTDIR)$(objectsdir)/$(ZEXY_NAME)/==~.$(EXTENSION)'
+#	test -e '$(DESTDIR)$(objectsdir)/$(ZEXY_NAME)/>~.$(EXTENSION)' || \
+#		ln -s 0x3e_tilde.$(EXTENSION) \
+#			'$(DESTDIR)$(objectsdir)/$(ZEXY_NAME)/>~.$(EXTENSION)'
+#	test -e '$(DESTDIR)$(objectsdir)/$(ZEXY_NAME)/||~.$(EXTENSION)' || \
+#		ln -s 0x7c0x7c_tilde.$(EXTENSION) \
+#			'$(DESTDIR)$(objectsdir)/$(ZEXY_NAME)/||~.$(EXTENSION)'
+#endif
 
 zexy_clean:
 	cd $(externals_src)/zexy && ./autogen.sh
diff --git a/externals/zexy/src/0x7c0x7c_tilde.c b/externals/zexy/src/0x7c0x7c_tilde.c
index 58376d434..9b43d7306 100644
--- a/externals/zexy/src/0x7c0x7c_tilde.c
+++ b/externals/zexy/src/0x7c0x7c_tilde.c
@@ -257,7 +257,7 @@ static void oror_tilde_help(t_object*x)
   post("\n"HEARTSYMBOL " &&~\t\t:: logical OR operation on 2 signals");
 }
 
-void setup_0x7c0x7c0x7e(void)
+void setup_0x7c0x7c_tilde(void)
 {
   oror_tilde_class = class_new(gensym("||~"), (t_newmethod)oror_tilde_new, 0,
                                sizeof(t_oror_tilde), 0, A_GIMME, 0);
-- 
GitLab


From 24f56deb4f3b55cb1dab6e09292b5f5f1a354bed Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Mon, 14 Aug 2017 22:53:36 -0400
Subject: [PATCH 87/98] change setup symbols to match the hexmunge format

---
 externals/zexy/src/0x260x26_tilde.c | 2 +-
 externals/zexy/src/0x3c_tilde.c     | 2 +-
 externals/zexy/src/0x3d0x3d_tilde.c | 2 +-
 externals/zexy/src/0x3e_tilde.c     | 2 +-
 4 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/externals/zexy/src/0x260x26_tilde.c b/externals/zexy/src/0x260x26_tilde.c
index cfea701f3..92aeda12b 100644
--- a/externals/zexy/src/0x260x26_tilde.c
+++ b/externals/zexy/src/0x260x26_tilde.c
@@ -283,7 +283,7 @@ static void andand_tilde_help(t_object*x)
   post("\n"HEARTSYMBOL " &&~\t\t:: logical AND operation on 2 signals");
 }
 
-void setup_0x260x260x7e(void)
+void setup_0x260x26_tilde(void)
 {
   andand_tilde_class = class_new(gensym("&&~"),
                                  (t_newmethod)andand_tilde_new, 0,
diff --git a/externals/zexy/src/0x3c_tilde.c b/externals/zexy/src/0x3c_tilde.c
index cea34b368..ef742e866 100644
--- a/externals/zexy/src/0x3c_tilde.c
+++ b/externals/zexy/src/0x3c_tilde.c
@@ -239,7 +239,7 @@ static void lt_tilde_help(t_object*x)
   post("\n"HEARTSYMBOL " <~\t\t:: compare 2 signals");
 }
 
-void setup_0x3c0x7e(void)
+void setup_0x3c_tilde(void)
 {
   lt_tilde_class = class_new(gensym("<~"), (t_newmethod)lt_tilde_new, 0,
                              sizeof(t_lt_tilde), 0, A_GIMME, 0);
diff --git a/externals/zexy/src/0x3d0x3d_tilde.c b/externals/zexy/src/0x3d0x3d_tilde.c
index 4622c7914..f78af4558 100644
--- a/externals/zexy/src/0x3d0x3d_tilde.c
+++ b/externals/zexy/src/0x3d0x3d_tilde.c
@@ -238,7 +238,7 @@ static void eq_tilde_help(t_object*x)
 {
   post("\n"HEARTSYMBOL " &&~\t\t:: test 2 signals for equality");
 }
-void setup_0x3d0x3d0x7e(void)
+void setup_0x3d0x3d_tilde(void)
 {
   eq_tilde_class = class_new(gensym("==~"), (t_newmethod)eq_tilde_new, 0,
                              sizeof(t_eq_tilde), 0, A_GIMME, 0);
diff --git a/externals/zexy/src/0x3e_tilde.c b/externals/zexy/src/0x3e_tilde.c
index c3736a347..cc6964ab7 100644
--- a/externals/zexy/src/0x3e_tilde.c
+++ b/externals/zexy/src/0x3e_tilde.c
@@ -242,7 +242,7 @@ static void gt_tilde_help(t_object*x)
   post("\n"HEARTSYMBOL " >~\t\t:: compare 2 signals");
 }
 
-void setup_0x3e0x7e(void)
+void setup_0x3e_tilde(void)
 {
   gt_tilde_class = class_new(gensym(">~"), (t_newmethod)gt_tilde_new, 0,
                              sizeof(t_gt_tilde), 0, A_GIMME, 0);
-- 
GitLab


From 08f6e7c5e9a1636414933cf7fe956321866f9d13 Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Wed, 16 Aug 2017 22:33:47 -0400
Subject: [PATCH 88/98] run tests from purr-data/scripts. Apparently the script
 is so brittle that this matters. :(

---
 .gitlab-ci.yml | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index f3cbec339..68a35f128 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -102,7 +102,8 @@ osx_amd64_dmg:
      - echo `pwd`
      - cd l2ork_addons
      - ./tar_em_up.sh -X
-     - ../packages/darwin_app/build/*.app/Contents/Resources/app.nw/bin/pd-l2ork -noprefs -nostdpath -nogui -noaudio ../scripts/external-tests.pd
+     - cd ../scripts
+     - ../packages/darwin_app/build/*.app/Contents/Resources/app.nw/bin/pd-l2ork -noprefs -nostdpath -nogui -noaudio external-tests.pd
    artifacts:
      expire_in: 1 day
      paths:
@@ -117,7 +118,8 @@ osx_10.8_amd64_dmg:
      - echo `pwd`
      - cd l2ork_addons
      - osx_version=10.8 ./tar_em_up.sh -X
-     - ../packages/darwin_app/build/*.app/Contents/Resources/app.nw/bin/pd-l2ork -noprefs -nostdpath -nogui -noaudio ../scripts/external-tests.pd
+     - cd ../scripts
+     - ../packages/darwin_app/build/*.app/Contents/Resources/app.nw/bin/pd-l2ork -noprefs -nostdpath -nogui -noaudio external-tests.pd
    artifacts:
      expire_in: 1 day
      paths:
-- 
GitLab


From ed7ff20d2a0c2e4576fd9605fc9eca833debb988 Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Thu, 17 Aug 2017 22:51:09 -0400
Subject: [PATCH 89/98] fix crashers with moonlib/dinlet~.c

---
 externals/moonlib/dinlet~.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/externals/moonlib/dinlet~.c b/externals/moonlib/dinlet~.c
index 02a36f7af..50168bedb 100644
--- a/externals/moonlib/dinlet~.c
+++ b/externals/moonlib/dinlet~.c
@@ -67,6 +67,7 @@ union inletunion
     t_gpointer *iu_pointerslot;
     t_float *iu_floatslot;
     t_symbol **iu_symslot;
+    t_blob **iu_blobslot; /* MP 20061226 blob type */
     t_sample iu_floatsignalvalue;
 };
 
@@ -98,7 +99,7 @@ void signal_setborrowed(t_signal *sig, t_signal *sig2);
 void signal_makereusable(t_signal *sig);
 
 /* ------------------------- vinlet -------------------------- */
-t_class *vinlet_class;
+extern t_class *vinlet_class;
 
 typedef struct _vinlet
 {
@@ -114,6 +115,7 @@ typedef struct _vinlet
     /* if not reblocking, the next slot communicates the parent's inlet
     signal from the prolog to the DSP routine: */
     t_signal *x_directsignal;
+    t_resample x_updown;
 } t_vinlet;
 
 
-- 
GitLab


From a737f8d5171f46e6d9a2b3823d286bb54820c912 Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Thu, 17 Aug 2017 23:49:42 -0400
Subject: [PATCH 90/98] try running tests with valgrind on all ubuntu runners

---
 .gitlab-ci.yml | 11 ++++++++---
 1 file changed, 8 insertions(+), 3 deletions(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 68a35f128..9f8777d80 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -49,7 +49,8 @@ ubuntu_14.04_i386_deb:
      - ./tar_em_up.sh -B
      - cd ..
      - echo "" | sudo -S DEBIAN_FRONTEND=noninteractive dpkg --force-all -i pd-l2ork*.deb > /dev/null
-     - valgrind pd-l2ork -noprefs -nostdpath -nogui -nrt -noaudio scripts/external-tests.pd
+     - cd scripts
+     - valgrind pd-l2ork -noprefs -nostdpath -nogui -nrt -noaudio external-tests.pd
    artifacts:
      expire_in: 1 day
      paths:
@@ -68,7 +69,9 @@ ubuntu_14.04_amd64_deb:
      - ./tar_em_up.sh -B
      - cd ..
      - echo "" | sudo -S DEBIAN_FRONTEND=noninteractive dpkg --force-all -i pd-l2ork*.deb > /dev/null
-     - pd-l2ork -noprefs -nostdpath -nogui -nrt -noaudio scripts/external-tests.pd
+     - cd scripts
+     - valgrind pd-l2ork -noprefs -nostdpath -nogui -nrt -noaudio external-tests.pd
+
    artifacts:
      expire_in: 1 day
      paths:
@@ -87,7 +90,9 @@ ubuntu_16.04_amd64_deb:
      - ./tar_em_up.sh -B
      - cd ..
      - echo "" | sudo -S DEBIAN_FRONTEND=noninteractive dpkg --force-all -i pd-l2ork*.deb > /dev/null
-     - pd-l2ork -noprefs -nostdpath -nogui -nrt -noaudio scripts/external-tests.pd
+     - cd scripts
+     - valgrind pd-l2ork -noprefs -nostdpath -nogui -nrt -noaudio external-tests.pd
+
    artifacts:
      expire_in: 1 day
      paths:
-- 
GitLab


From 6e1b78d42fdacd0f284cf5cea24b2fe20a9164b0 Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Fri, 18 Aug 2017 00:23:34 -0400
Subject: [PATCH 91/98] run windows tests from scripts/

---
 .gitlab-ci.yml | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 9f8777d80..cb5e837db 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -138,7 +138,8 @@ windows_i386_installer:
     - echo `pwd`
     - cd l2ork_addons
     - ./tar_em_up.sh -Z
-    - ../packages/win32_inno/build/bin/pd.exe -noprefs -nostdpath -nogui -noaudio ../scripts/external-tests.pd
+    - cd ../scripts
+    - ../packages/win32_inno/build/bin/pd.exe -noprefs -nostdpath -nogui -noaudio external-tests.pd
   artifacts:
     expire_in: 1 day
     paths:
-- 
GitLab


From 3ddb3e044923455e72a3dccd82b612702f724e0d Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Fri, 18 Aug 2017 22:14:12 -0400
Subject: [PATCH 92/98] lower expectations on required constructor count to
 2251

---
 scripts/external-tests.pd | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

diff --git a/scripts/external-tests.pd b/scripts/external-tests.pd
index 926211d25..5ac7d5771 100644
--- a/scripts/external-tests.pd
+++ b/scripts/external-tests.pd
@@ -744,7 +744,7 @@ nameclash is in the current library we're testing then we ignore it.
 #X connect 1 0 2 0;
 #X connect 1 1 3 0;
 #X restore 164 359 pd set_\$0-ext;
-#N canvas 36 75 1068 572 results 0;
+#N canvas 37 97 1068 572 results 0;
 #X obj 62 25 inlet;
 #X obj 235 33 r \$0-current-libdir-name;
 #X obj 146 33 r \$0-fail;
@@ -785,11 +785,11 @@ nameclash is in the current library we're testing then we ignore it.
 #X obj 335 345 s \$0-fail;
 #X obj 63 212 t b b b;
 #X obj 63 323 t a b a;
-#X obj 335 262 moses 2275;
-#X msg 335 320 only counted \$1 objects. Need 2275 to succeed;
 #X text 432 224 Where did we get 2275? It is the number of creators
 that we found on OSX-- which does not yet ship K12 mode. (Still need
 to set up Windows tests \, however.;
+#X obj 335 262 moses 2251;
+#X msg 335 320 only counted \$1 objects. Need 2251 to succeed;
 #X connect 0 0 38 0;
 #X connect 1 0 4 0;
 #X connect 2 0 3 0;
@@ -823,7 +823,7 @@ to set up Windows tests \, however.;
 #X connect 29 0 27 0;
 #X connect 30 0 27 0;
 #X connect 31 0 32 0;
-#X connect 32 0 40 0;
+#X connect 32 0 41 0;
 #X connect 33 0 34 0;
 #X connect 34 0 33 1;
 #X connect 34 0 32 1;
@@ -834,9 +834,9 @@ to set up Windows tests \, however.;
 #X connect 39 0 14 0;
 #X connect 39 1 12 0;
 #X connect 39 2 17 0;
-#X connect 40 0 41 0;
-#X connect 40 1 36 0;
-#X connect 41 0 37 0;
+#X connect 41 0 42 0;
+#X connect 41 1 36 0;
+#X connect 42 0 37 0;
 #X restore 61 741 pd results;
 #X obj 132 239 t a a;
 #X obj 61 94 trigger bang bang bang anything;
-- 
GitLab


From 45cae0f5e6c6b7be64d39349d4be9bf3468f7dca Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Sun, 20 Aug 2017 22:53:21 -0400
Subject: [PATCH 93/98] remove non-existent "google" test lib that was used for
 debugging

---
 scripts/external-tests.pd | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/scripts/external-tests.pd b/scripts/external-tests.pd
index 5ac7d5771..398d5def7 100644
--- a/scripts/external-tests.pd
+++ b/scripts/external-tests.pd
@@ -17,7 +17,7 @@
 #X connect 7 0 1 0;
 #X restore 164 459 pd load_hcs/folder_list;
 #X text 304 45 \$0-libdir - directory containing doc and extra;
-#N canvas 45 220 956 472 list_of_libdirs 0;
+#N canvas 46 220 956 472 list_of_libdirs 0;
 #X obj 24 9 inlet;
 #X text 70 128 libraries that are loaded at startup in Purr Data;
 #X text 49 267 Gem is currently excluded because it doesn't run on
@@ -39,7 +39,7 @@ iemxmlrpc jasch_lib K12 la-kitchen loop~ lrshift~ memento-p mjlib moocow
 moonlib motex mrpeach nsend pan pd~ pdcontainer pd-wavelet pique plugin~
 pmpd purepd rjlib rradical rtc sfruit sigmund~ stdout timestretch windowing
 ;
-#X msg 24 150 google libdir cyclone zexy creb cxc iemlib list-abs mapping
+#X msg 24 150 libdir cyclone zexy creb cxc iemlib list-abs mapping
 markex maxlib memento mjlib motex osx pddp pdogg pixeltango pmpd rradical
 sigpack smlib unauthorized vbap pan freeverb~ hcs jmmmp ext13 ggee
 iem_anything ekext disis lyonpotpourri;
-- 
GitLab


From 8a701fbf64a71de46ad06bdfa35d4d3e5a03d8f4 Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Mon, 21 Aug 2017 21:18:59 -0400
Subject: [PATCH 94/98] use int instead of t_int

It appears int and t_int were freely mixed in this external, causing a size
discrepancy that can result in a buffer overflow. Since t_int is supposed to
be function pointer-sized container, it's unclear why that would be used here.
This commit changes all t_int use to int.

If t_int was really meant here for some reason then we can go in the other
direction.
---
 externals/creb/modules/ffpoly.c | 16 ++++++++--------
 1 file changed, 8 insertions(+), 8 deletions(-)

diff --git a/externals/creb/modules/ffpoly.c b/externals/creb/modules/ffpoly.c
index 844a96c7b..e70402530 100644
--- a/externals/creb/modules/ffpoly.c
+++ b/externals/creb/modules/ffpoly.c
@@ -31,11 +31,11 @@ typedef struct ffpoly_struct
     t_float x_f;
 
     t_outlet *x_outlet;
-    t_int *x_coef;
-    t_int x_poly_order;
-    t_int x_field_order;
+    int *x_coef;
+    int x_poly_order;
+    int x_field_order;
 
-    t_int x_lastpackedcoef;
+    int x_lastpackedcoef;
 
 
 
@@ -49,7 +49,7 @@ static void ffpoly_compute(t_ffpoly *x, t_floatarg fcoef)
     int in = (int)fcoef;
     int fo = x->x_field_order;
     int po = x->x_poly_order;
-    t_int* c = x->x_coef;
+    int* c = x->x_coef;
     int i, out;
 
     in %= fo;
@@ -124,8 +124,8 @@ t_class *ffpoly_class;
 
 static void *ffpoly_new(t_floatarg fpolyorder, t_floatarg ffieldorder)
 {
-    t_int polyorder = (int)fpolyorder;
-    t_int fieldorder = (int)ffieldorder;
+    int polyorder = (int)fpolyorder;
+    int fieldorder = (int)ffieldorder;
 
     t_ffpoly *x = (t_ffpoly *)pd_new(ffpoly_class);
 
@@ -135,7 +135,7 @@ static void *ffpoly_new(t_floatarg fpolyorder, t_floatarg ffieldorder)
     x->x_poly_order = polyorder;
     x->x_field_order = fieldorder;
 
-    x->x_coef = (t_int *)malloc((x->x_poly_order  + 1) * sizeof(int));
+    x->x_coef = (int *)malloc((x->x_poly_order  + 1) * sizeof(int));
 
     /* set poly to f(x) = x */
     ffpoly_coefficients(x, x->x_field_order);
-- 
GitLab


From bb140e895fedc578ef5c4e57a273663bc8f5a0cb Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Mon, 21 Aug 2017 22:05:07 -0400
Subject: [PATCH 95/98] update lyonpotpourri to fix namespace pollution bug
 with counter~

---
 externals/lyonpotpourri | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/externals/lyonpotpourri b/externals/lyonpotpourri
index 52319ac32..b1bf43a35 160000
--- a/externals/lyonpotpourri
+++ b/externals/lyonpotpourri
@@ -1 +1 @@
-Subproject commit 52319ac32801440e82a9212859b882210098f1c3
+Subproject commit b1bf43a35f635c43ae4955f54f6fec17160e2499
-- 
GitLab


From 614c7da702bb2515763c5f79367793589d961e34 Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Mon, 21 Aug 2017 22:12:21 -0400
Subject: [PATCH 96/98] add missing static declaration

---
 externals/lyonpotpourri | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/externals/lyonpotpourri b/externals/lyonpotpourri
index b1bf43a35..530895321 160000
--- a/externals/lyonpotpourri
+++ b/externals/lyonpotpourri
@@ -1 +1 @@
-Subproject commit b1bf43a35f635c43ae4955f54f6fec17160e2499
+Subproject commit 530895321c94d446577272b3f99e35b2f2076498
-- 
GitLab


From 2bce172b62f06dfab50159cebb6a1c3e7ae58474 Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Mon, 21 Aug 2017 22:15:52 -0400
Subject: [PATCH 97/98] use static declarations to protect against namespace
 pollution

---
 externals/cxc/cxc_counter.c | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

diff --git a/externals/cxc/cxc_counter.c b/externals/cxc/cxc_counter.c
index c84f8517b..8b43dd756 100644
--- a/externals/cxc/cxc_counter.c
+++ b/externals/cxc/cxc_counter.c
@@ -23,7 +23,7 @@ typedef struct _counter
 	t_outlet    *t_out2;	/* the outlet */
 } t_counter;
 
-void counter_bang(t_counter *x)
+static void counter_bang(t_counter *x)
 {
 	int sendBang = 0;
     switch(x->c_dir)
@@ -93,23 +93,23 @@ void counter_bang(t_counter *x)
 		outlet_bang(x->t_out2);
 }
 
-void counter_dir(t_counter *x, t_floatarg n)
+static void counter_dir(t_counter *x, t_floatarg n)
 {
     if (n == 1 || n == 2 || n == 3) x->c_dir = (int)n;
     else error("bad dir");
 }
 
-void counter_high(t_counter *x, t_floatarg n)
+static void counter_high(t_counter *x, t_floatarg n)
 {
     x->c_high = (int)n;
 }
 
-void counter_low(t_counter *x, t_floatarg n)
+static void counter_low(t_counter *x, t_floatarg n)
 {
     x->c_low = (int)n;
 }
 
-void counter_reset(t_counter *x, t_symbol *s, int argc, t_atom *argv)
+static void counter_reset(t_counter *x, t_symbol *s, int argc, t_atom *argv)
 {
     if (!argc)
     {
@@ -144,7 +144,7 @@ void counter_reset(t_counter *x, t_symbol *s, int argc, t_atom *argv)
     outlet_float(x->t_out1, (float)x->c_current);
 }
 
-void counter_clear(t_counter *x, t_symbol *s, int argc, t_atom *argv)
+static void counter_clear(t_counter *x, t_symbol *s, int argc, t_atom *argv)
 {
     if (!argc)
     {
@@ -178,7 +178,7 @@ void counter_clear(t_counter *x, t_symbol *s, int argc, t_atom *argv)
     }
 }
 
-void *counter_new(t_floatarg f, t_floatarg g, t_floatarg h) /* init vals in struc */
+static void *counter_new(t_floatarg f, t_floatarg g, t_floatarg h) /* init vals in struc */
 {
     t_counter *x = (t_counter *)pd_new(counter_class);
     x->t_out1 = outlet_new(&x->x_obj, 0);
-- 
GitLab


From 4de72424fcdac8793c4beed38bf70a6e4c7bcfca Mon Sep 17 00:00:00 2001
From: Jonathan Wilkes <jon.w.wilkes@gmail.com>
Date: Mon, 21 Aug 2017 23:31:10 -0400
Subject: [PATCH 98/98] add terminating 0 to arg types

---
 externals/cxc/ENV.c  | 4 ++--
 externals/cxc/proc.c | 6 +++---
 2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/externals/cxc/ENV.c b/externals/cxc/ENV.c
index c898559d9..e8c2fe56e 100644
--- a/externals/cxc/ENV.c
+++ b/externals/cxc/ENV.c
@@ -81,8 +81,8 @@ void ENV_setup(void)
     ENV_class = class_new(gensym("ENV"), (t_newmethod)ENV_new, 0,
     	sizeof(t_ENV), 0, 0);
     class_addmethod(ENV_class, (t_method)ENV_RAND_MAX, gensym("RAND_MAX"), 0);
-    class_addmethod(ENV_class, (t_method)ENV_getenv, gensym("getenv"), A_SYMBOL);
-    class_addmethod(ENV_class, (t_method)ENV_setenv, gensym("setenv"), A_SYMBOL, A_SYMBOL);
+    class_addmethod(ENV_class, (t_method)ENV_getenv, gensym("getenv"), A_SYMBOL, 0);
+    class_addmethod(ENV_class, (t_method)ENV_setenv, gensym("setenv"), A_SYMBOL, A_SYMBOL, 0);
     class_addfloat(ENV_class, ENV_float);
 }
 
diff --git a/externals/cxc/proc.c b/externals/cxc/proc.c
index 1bb633c79..7bb11e58d 100644
--- a/externals/cxc/proc.c
+++ b/externals/cxc/proc.c
@@ -213,10 +213,10 @@ void proc_setup(void)
     proc_class = class_new(gensym("proc"), (t_newmethod)proc_new, 0,
     	sizeof(t_proc), 0, 0);
     class_addmethod(proc_class, (t_method)proc_cpuinfo, gensym("cpuinfo"), 0);
-    class_addmethod(proc_class, (t_method)proc_proc,    gensym("proc"),    A_SYMBOL);
+    class_addmethod(proc_class, (t_method)proc_proc,    gensym("proc"),    A_SYMBOL, 0);
     //class_addmethod(proc_class, (t_method)proc_RAND_MAX, gensym("RAND_MAX"), 0);
-    //class_addmethod(proc_class, (t_method)proc_getenv, gensym("getenv"), A_SYMBOL);
-    //class_addmethod(proc_class, (t_method)proc_setenv, gensym("setenv"), A_SYMBOL, A_SYMBOL);
+    //class_addmethod(proc_class, (t_method)proc_getenv, gensym("getenv"), A_SYMBOL, 0);
+    //class_addmethod(proc_class, (t_method)proc_setenv, gensym("setenv"), A_SYMBOL, A_SYMBOL, 0);
     class_addfloat(proc_class, proc_float);
 }
 
-- 
GitLab