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