Index: doc/theses/mike_brooks_MMath/benchmarks/list/driver.c
===================================================================
--- doc/theses/mike_brooks_MMath/benchmarks/list/driver.c	(revision 39ffa5e134a180ed0450785d9712d55c8f10036a)
+++ doc/theses/mike_brooks_MMath/benchmarks/list/driver.c	(revision 81e1984bc450631534fe266ecbbd83ed5d17c16c)
@@ -120,6 +120,11 @@
 #endif
 MAYBE_EXTERN_C (
-    volatile unsigned int const * bobs_prog_rem_pos
-        = BOP_REMPROGEND_IS_REMNO_BASED ? & bobs_prog_removing_end : & bobs_prog_removing;
+    volatile unsigned int const * bobs_prog_rem_pos =
+      #ifdef DISABLE_INTERLEAVING
+        & bobs_prog_removing
+      #else
+        BOP_REMPROGEND_IS_REMNO_BASED ? & bobs_prog_removing_end : & bobs_prog_removing
+      #endif
+      ;
 )
 
Index: doc/theses/mike_brooks_MMath/benchmarks/list/expect.queue-insfirst.txt
===================================================================
--- doc/theses/mike_brooks_MMath/benchmarks/list/expect.queue-insfirst.txt	(revision 39ffa5e134a180ed0450785d9712d55c8f10036a)
+++ doc/theses/mike_brooks_MMath/benchmarks/list/expect.queue-insfirst.txt	(revision 81e1984bc450631534fe266ecbbd83ed5d17c16c)
@@ -1,89 +1,89 @@
-a       0 +      0/2 +      0/2   (list is empty)
-b       0 +      0/2 +      0/2   (list is empty)
--       0 +      1/2 +      0/2   | <0> | ... | <0> |
-+       0 +      1/2 +      0/2   | 1 <0> | ... | 1 <0> |
--       0 +      2/2 +      0/2   | <1> 0 | ... | 1 <0> |
-+       0 +      2/2 +      0/2   | 2 <1> 0 | ... 2 1 <0> |
--       0 +      3/2 +      0/2   | <2> 1 0 ... 2 1 <0> |
-+       0 +      3/2 +      0/2   | 3 <2> 1 0 ... 2 1 <0> |
--       0 +      4/2 +      0/2   | <3> 2 1 ... 2 1 <0> |
-+       0 +      4/2 +      0/2   | 4 <3> 2 1 ... 2 1 <0> |
--       0 +      5/2 +      0/2   | <4> 3 2 ... 2 1 <0> |
-+       0 +      5/2 +      0/2   | 5 <4> 3 2 ... 2 1 <0> |
--       0 +      6/2 +      0/2   | <5> 4 3 ... 2 1 <0> |
-+       0 +      6/2 +      0/2   | 6 <5> 4 3 ... 2 1 <0> |
--       0 +      7/2 +      0/2   | <6> 5 4 ... 5 4 <3> 2 1 ... 2 1 <0> |
-+       0 +      7/2 +      0/2   | 7 <6> 5 4 ... 5 4 <3> 2 1 ... 2 1 <0> |
--       0 +      8/2 +      0/2   | <7> 6 5 ... 5 4 <3> 2 1 ... 2 1 <0> |
-+       0 +      8/2 +      0/2   | 8 <7> 6 5 ... 5 4 <3> 2 1 ... 2 1 <0> |
--       0 +      9/2 +      0/2   | <8> 7 6 ... 6 5 <4> 3 2 ... 2 1 <0> |
-+       0 +      9/2 +      0/2   | 9 <8> 7 6 ... 6 5 <4> 3 2 ... 2 1 <0> |
-c       0 +     10/2 +      0/2   | <9> 8 7 ... 6 5 <4> 3 2 ... 2 1 <0> |
--       0 +     10/2 +      1/2   | <9> 8 7 ... 7 6 <5> 4 3 ... 3 2 <1> 0 |
-+       0 +     10/2 +      1/2   | <9> 8 7 ... 7 6 <5> 4 3 ... 3 2 <1> |
--       0 +     10/2 +      2/2   | <9> 8 7 ... 7 6 <5> 4 3 ... 4 3 <2> 1 |
-+       0 +     10/2 +      2/2   | <9> 8 7 ... 7 6 <5> 4 3 ... 4 3 <2> |
--       0 +     10/2 +      3/2   | <9> 8 7 ... 8 7 <6> 5 4 ... 5 4 <3> 2 |
-+       0 +     10/2 +      3/2   | <9> 8 7 ... 8 7 <6> 5 4 ... 5 4 <3> |
--       0 +     10/2 +      4/2   | <9> 8 7 ... 6 5 <4> 3 |
-+       0 +     10/2 +      4/2   | <9> 8 7 ... 6 5 <4> |
--       0 +     10/2 +      5/2   | <9> 8 7 ... 7 6 <5> 4 |
-+       0 +     10/2 +      5/2   | <9> 8 7 ... 7 6 <5> |
--       0 +     10/2 +      6/2   | <9> 8 7 ... 8 7 <6> 5 |
-+       0 +     10/2 +      6/2   | <9> 8 7 ... 8 7 <6> |
--       0 +     10/2 +      7/2   | <9> 8 7 ... 9 8 <7> 6 |
-+       0 +     10/2 +      7/2   | <9> 8 7 ... 9 8 <7> |
--       0 +     10/2 +      8/2   | <9> 8 7 ... | 9 <8> 7 |
-+       0 +     10/2 +      8/2   | <9> 8 | ... | 9 <8> |
--       0 +     10/2 +      9/2   | <9> 8 | ... | <9> 8 |
-+       0 +     10/2 +      9/2   | <9> | ... | <9> |
-D       0 +     10/2 +     10/2   (list is empty)
-d       0 +     10/2 +     10/2   (list is empty)
+a       0 +      0/2 +      0/2,      0@e      0_u   (list is empty)
+b       0 +      0/2 +      0/2,      0@e      0_u   (list is empty)
+-       0 +      1/2 +      0/2,      0@e      0_u   v0..0  | <0> | ... | <0> |
++       0 +      1/2 +      0/2,      0@e      0_u   v0..0  | 1 <0> | ... | 1 <0> |
+-       0 +      2/2 +      0/2,      0@e      0_u   v1..0  | <1> 0 | ... | 1 <0> |
++       0 +      2/2 +      0/2,      0@e      0_u   v1..0  | 2 <1> 0 | ... | 2 1 <0> |
+-       0 +      3/2 +      0/2,      0@e      0_u   v2..0  | <2> 1 0 | ... | 2 1 <0> |
++       0 +      3/2 +      0/2,      0@e      0_u   v2..0  | 3 <2> 1 0 | ... | 3 2 1 <0> |
+-       0 +      4/2 +      0/2,      0@e      0_u   v3..0  | <3> 2 1 0 | ... | 3 2 1 <0> |
++       0 +      4/2 +      0/2,      0@e      0_u   v3..0  | 4 <3> 2 1 0 | ... | 4 3 2 1 <0> |
+-       0 +      5/2 +      0/2,      0@e      0_u   v4..0  | <4> 3 2 1 0 | ... | 4 3 2 1 <0> |
++       0 +      5/2 +      0/2,      0@e      0_u   v4..0  | 5 <4> 3 2 1 0 | ... | 5 4 3 2 1 <0> |
+-       0 +      6/2 +      0/2,      0@e      0_u   v5..0  | <5> 4 3 2 1 0 | ... | 5 4 3 2 1 <0> |
++       0 +      6/2 +      0/2,      0@e      0_u   v5..0  | 6 <5> 4 3 2 1 0 | ... 6 5 4 3 2 1 <0> |
+-       0 +      7/2 +      0/2,      0@e      0_u   v6..0  | <6> 5 4 3 2 1 0 ... 6 5 4 3 2 1 <0> |
++       0 +      7/2 +      0/2,      0@e      0_u   v6..0  | 7 <6> 5 4 3 2 1 0 ... 6 5 4 3 2 1 <0> |
+-       0 +      8/2 +      0/2,      0@e      0_u   v7..0  | <7> 6 5 4 3 2 1 ... 6 5 4 3 2 1 <0> |
++       0 +      8/2 +      0/2,      0@e      0_u   v7..0  | 8 <7> 6 5 4 3 2 1 ... 6 5 4 3 2 1 <0> |
+-       0 +      9/2 +      0/2,      0@e      0_u   v8..0  | <8> 7 6 5 4 3 2 ... 6 5 4 3 2 1 <0> |
++       0 +      9/2 +      0/2,      0@e      0_u   v8..0  | 9 <8> 7 6 5 4 3 2 ... 6 5 4 3 2 1 <0> |
+c       0 +     10/2 +      0/2,      0@e      0_u   v9..0  | <9> 8 7 6 5 4 3 ... 6 5 4 3 2 1 <0> |
+-       0 +     10/2 +      1/2,      0@e      1_u   v9..1  | <9> 8 7 6 5 4 3 ... 7 6 5 4 3 2 <1> 0 |
++       0 +     10/2 +      1/2,      0@e      1_u   v9..1  | <9> 8 7 6 5 4 3 ... 7 6 5 4 3 2 <1> |
+-       0 +     10/2 +      2/2,      0@e      2_u   v9..2  | <9> 8 7 6 5 4 3 ... 8 7 6 5 4 3 <2> 1 |
++       0 +     10/2 +      2/2,      0@e      2_u   v9..2  | <9> 8 7 6 5 4 3 ... 8 7 6 5 4 3 <2> |
+-       0 +     10/2 +      3/2,      0@e      3_u   v9..3  | <9> 8 7 6 5 4 3 ... 9 8 7 6 5 4 <3> 2 |
++       0 +     10/2 +      3/2,      0@e      3_u   v9..3  | <9> 8 7 6 5 4 3 ... 9 8 7 6 5 4 <3> |
+-       0 +     10/2 +      4/2,      0@e      4_u   v9..4  | <9> 8 7 6 5 4 3 ... | 9 8 7 6 5 <4> 3 |
++       0 +     10/2 +      4/2,      0@e      4_u   v9..4  | <9> 8 7 6 5 4 | ... | 9 8 7 6 5 <4> |
+-       0 +     10/2 +      5/2,      0@e      5_u   v9..5  | <9> 8 7 6 5 4 | ... | 9 8 7 6 <5> 4 |
++       0 +     10/2 +      5/2,      0@e      5_u   v9..5  | <9> 8 7 6 5 | ... | 9 8 7 6 <5> |
+-       0 +     10/2 +      6/2,      0@e      6_u   v9..6  | <9> 8 7 6 5 | ... | 9 8 7 <6> 5 |
++       0 +     10/2 +      6/2,      0@e      6_u   v9..6  | <9> 8 7 6 | ... | 9 8 7 <6> |
+-       0 +     10/2 +      7/2,      0@e      7_u   v9..7  | <9> 8 7 6 | ... | 9 8 <7> 6 |
++       0 +     10/2 +      7/2,      0@e      7_u   v9..7  | <9> 8 7 | ... | 9 8 <7> |
+-       0 +     10/2 +      8/2,      0@e      8_u   v9..8  | <9> 8 7 | ... | 9 <8> 7 |
++       0 +     10/2 +      8/2,      0@e      8_u   v9..8  | <9> 8 | ... | 9 <8> |
+-       0 +     10/2 +      9/2,      0@e      9_u   v9..9  | <9> 8 | ... | <9> 8 |
++       0 +     10/2 +      9/2,      0@e      9_u   v9..9  | <9> | ... | <9> |
+D       0 +     10/2 +     10/2,      0@e     10_u   (list is empty)
+d       0 +     10/2 +     10/2,      0@e     10_u   (list is empty)
 e       0 + ? (rolling over)
 f      10 + ? (rolling over)
-g      10 +      0/2 +      0/2   (list is empty)
-a      10 +      0/2 +      0/2   (list is empty)
-b      10 +      0/2 +      0/2   (list is empty)
--      10 +      1/2 +      0/2   | <0> | ... | <0> |
-+      10 +      1/2 +      0/2   | 1 <0> | ... | 1 <0> |
--      10 +      2/2 +      0/2   | <1> 0 | ... | 1 <0> |
-+      10 +      2/2 +      0/2   | 2 <1> 0 | ... 2 1 <0> |
--      10 +      3/2 +      0/2   | <2> 1 0 ... 2 1 <0> |
-+      10 +      3/2 +      0/2   | 3 <2> 1 0 ... 2 1 <0> |
--      10 +      4/2 +      0/2   | <3> 2 1 ... 2 1 <0> |
-+      10 +      4/2 +      0/2   | 4 <3> 2 1 ... 2 1 <0> |
--      10 +      5/2 +      0/2   | <4> 3 2 ... 2 1 <0> |
-+      10 +      5/2 +      0/2   | 5 <4> 3 2 ... 2 1 <0> |
--      10 +      6/2 +      0/2   | <5> 4 3 ... 2 1 <0> |
-+      10 +      6/2 +      0/2   | 6 <5> 4 3 ... 2 1 <0> |
--      10 +      7/2 +      0/2   | <6> 5 4 ... 5 4 <3> 2 1 ... 2 1 <0> |
-+      10 +      7/2 +      0/2   | 7 <6> 5 4 ... 5 4 <3> 2 1 ... 2 1 <0> |
--      10 +      8/2 +      0/2   | <7> 6 5 ... 5 4 <3> 2 1 ... 2 1 <0> |
-+      10 +      8/2 +      0/2   | 8 <7> 6 5 ... 5 4 <3> 2 1 ... 2 1 <0> |
--      10 +      9/2 +      0/2   | <8> 7 6 ... 6 5 <4> 3 2 ... 2 1 <0> |
-+      10 +      9/2 +      0/2   | 9 <8> 7 6 ... 6 5 <4> 3 2 ... 2 1 <0> |
-c      10 +     10/2 +      0/2   | <9> 8 7 ... 6 5 <4> 3 2 ... 2 1 <0> |
--      10 +     10/2 +      1/2   | <9> 8 7 ... 7 6 <5> 4 3 ... 3 2 <1> 0 |
-+      10 +     10/2 +      1/2   | <9> 8 7 ... 7 6 <5> 4 3 ... 3 2 <1> |
--      10 +     10/2 +      2/2   | <9> 8 7 ... 7 6 <5> 4 3 ... 4 3 <2> 1 |
-+      10 +     10/2 +      2/2   | <9> 8 7 ... 7 6 <5> 4 3 ... 4 3 <2> |
--      10 +     10/2 +      3/2   | <9> 8 7 ... 8 7 <6> 5 4 ... 5 4 <3> 2 |
-+      10 +     10/2 +      3/2   | <9> 8 7 ... 8 7 <6> 5 4 ... 5 4 <3> |
--      10 +     10/2 +      4/2   | <9> 8 7 ... 6 5 <4> 3 |
-+      10 +     10/2 +      4/2   | <9> 8 7 ... 6 5 <4> |
--      10 +     10/2 +      5/2   | <9> 8 7 ... 7 6 <5> 4 |
-+      10 +     10/2 +      5/2   | <9> 8 7 ... 7 6 <5> |
--      10 +     10/2 +      6/2   | <9> 8 7 ... 8 7 <6> 5 |
-+      10 +     10/2 +      6/2   | <9> 8 7 ... 8 7 <6> |
--      10 +     10/2 +      7/2   | <9> 8 7 ... 9 8 <7> 6 |
-+      10 +     10/2 +      7/2   | <9> 8 7 ... 9 8 <7> |
--      10 +     10/2 +      8/2   | <9> 8 7 ... | 9 <8> 7 |
-+      10 +     10/2 +      8/2   | <9> 8 | ... | 9 <8> |
--      10 +     10/2 +      9/2   | <9> 8 | ... | <9> 8 |
-+      10 +     10/2 +      9/2   | <9> | ... | <9> |
-D      10 +     10/2 +     10/2   (list is empty)
-d      10 +     10/2 +     10/2   (list is empty)
+g      10 +      0/2 +      0/2,      0@e      0_u   (list is empty)
+a      10 +      0/2 +      0/2,      0@e      0_u   (list is empty)
+b      10 +      0/2 +      0/2,      0@e      0_u   (list is empty)
+-      10 +      1/2 +      0/2,      0@e      0_u   v0..0  | <0> | ... | <0> |
++      10 +      1/2 +      0/2,      0@e      0_u   v0..0  | 1 <0> | ... | 1 <0> |
+-      10 +      2/2 +      0/2,      0@e      0_u   v1..0  | <1> 0 | ... | 1 <0> |
++      10 +      2/2 +      0/2,      0@e      0_u   v1..0  | 2 <1> 0 | ... | 2 1 <0> |
+-      10 +      3/2 +      0/2,      0@e      0_u   v2..0  | <2> 1 0 | ... | 2 1 <0> |
++      10 +      3/2 +      0/2,      0@e      0_u   v2..0  | 3 <2> 1 0 | ... | 3 2 1 <0> |
+-      10 +      4/2 +      0/2,      0@e      0_u   v3..0  | <3> 2 1 0 | ... | 3 2 1 <0> |
++      10 +      4/2 +      0/2,      0@e      0_u   v3..0  | 4 <3> 2 1 0 | ... | 4 3 2 1 <0> |
+-      10 +      5/2 +      0/2,      0@e      0_u   v4..0  | <4> 3 2 1 0 | ... | 4 3 2 1 <0> |
++      10 +      5/2 +      0/2,      0@e      0_u   v4..0  | 5 <4> 3 2 1 0 | ... | 5 4 3 2 1 <0> |
+-      10 +      6/2 +      0/2,      0@e      0_u   v5..0  | <5> 4 3 2 1 0 | ... | 5 4 3 2 1 <0> |
++      10 +      6/2 +      0/2,      0@e      0_u   v5..0  | 6 <5> 4 3 2 1 0 | ... 6 5 4 3 2 1 <0> |
+-      10 +      7/2 +      0/2,      0@e      0_u   v6..0  | <6> 5 4 3 2 1 0 ... 6 5 4 3 2 1 <0> |
++      10 +      7/2 +      0/2,      0@e      0_u   v6..0  | 7 <6> 5 4 3 2 1 0 ... 6 5 4 3 2 1 <0> |
+-      10 +      8/2 +      0/2,      0@e      0_u   v7..0  | <7> 6 5 4 3 2 1 ... 6 5 4 3 2 1 <0> |
++      10 +      8/2 +      0/2,      0@e      0_u   v7..0  | 8 <7> 6 5 4 3 2 1 ... 6 5 4 3 2 1 <0> |
+-      10 +      9/2 +      0/2,      0@e      0_u   v8..0  | <8> 7 6 5 4 3 2 ... 6 5 4 3 2 1 <0> |
++      10 +      9/2 +      0/2,      0@e      0_u   v8..0  | 9 <8> 7 6 5 4 3 2 ... 6 5 4 3 2 1 <0> |
+c      10 +     10/2 +      0/2,      0@e      0_u   v9..0  | <9> 8 7 6 5 4 3 ... 6 5 4 3 2 1 <0> |
+-      10 +     10/2 +      1/2,      0@e      1_u   v9..1  | <9> 8 7 6 5 4 3 ... 7 6 5 4 3 2 <1> 0 |
++      10 +     10/2 +      1/2,      0@e      1_u   v9..1  | <9> 8 7 6 5 4 3 ... 7 6 5 4 3 2 <1> |
+-      10 +     10/2 +      2/2,      0@e      2_u   v9..2  | <9> 8 7 6 5 4 3 ... 8 7 6 5 4 3 <2> 1 |
++      10 +     10/2 +      2/2,      0@e      2_u   v9..2  | <9> 8 7 6 5 4 3 ... 8 7 6 5 4 3 <2> |
+-      10 +     10/2 +      3/2,      0@e      3_u   v9..3  | <9> 8 7 6 5 4 3 ... 9 8 7 6 5 4 <3> 2 |
++      10 +     10/2 +      3/2,      0@e      3_u   v9..3  | <9> 8 7 6 5 4 3 ... 9 8 7 6 5 4 <3> |
+-      10 +     10/2 +      4/2,      0@e      4_u   v9..4  | <9> 8 7 6 5 4 3 ... | 9 8 7 6 5 <4> 3 |
++      10 +     10/2 +      4/2,      0@e      4_u   v9..4  | <9> 8 7 6 5 4 | ... | 9 8 7 6 5 <4> |
+-      10 +     10/2 +      5/2,      0@e      5_u   v9..5  | <9> 8 7 6 5 4 | ... | 9 8 7 6 <5> 4 |
++      10 +     10/2 +      5/2,      0@e      5_u   v9..5  | <9> 8 7 6 5 | ... | 9 8 7 6 <5> |
+-      10 +     10/2 +      6/2,      0@e      6_u   v9..6  | <9> 8 7 6 5 | ... | 9 8 7 <6> 5 |
++      10 +     10/2 +      6/2,      0@e      6_u   v9..6  | <9> 8 7 6 | ... | 9 8 7 <6> |
+-      10 +     10/2 +      7/2,      0@e      7_u   v9..7  | <9> 8 7 6 | ... | 9 8 <7> 6 |
++      10 +     10/2 +      7/2,      0@e      7_u   v9..7  | <9> 8 7 | ... | 9 8 <7> |
+-      10 +     10/2 +      8/2,      0@e      8_u   v9..8  | <9> 8 7 | ... | 9 <8> 7 |
++      10 +     10/2 +      8/2,      0@e      8_u   v9..8  | <9> 8 | ... | 9 <8> |
+-      10 +     10/2 +      9/2,      0@e      9_u   v9..9  | <9> 8 | ... | <9> 8 |
++      10 +     10/2 +      9/2,      0@e      9_u   v9..9  | <9> | ... | <9> |
+D      10 +     10/2 +     10/2,      0@e     10_u   (list is empty)
+d      10 +     10/2 +     10/2,      0@e     10_u   (list is empty)
 e      10 + ? (rolling over)
 f      20 + ? (rolling over)
-g      20 +      0/2 +      0/2   (list is empty)
+g      20 +      0/2 +      0/2,      0@e      0_u   (list is empty)
 
Index: doc/theses/mike_brooks_MMath/benchmarks/list/expect.queue-inslast.txt
===================================================================
--- doc/theses/mike_brooks_MMath/benchmarks/list/expect.queue-inslast.txt	(revision 39ffa5e134a180ed0450785d9712d55c8f10036a)
+++ doc/theses/mike_brooks_MMath/benchmarks/list/expect.queue-inslast.txt	(revision 81e1984bc450631534fe266ecbbd83ed5d17c16c)
@@ -1,89 +1,89 @@
-a       0 +      0/2 +      0/2   (list is empty)
-b       0 +      0/2 +      0/2   (list is empty)
--       0 +      1/2 +      0/2   | <0> | ... | <0> |
-+       0 +      1/2 +      0/2   | <0> 1 | ... | <0> 1 |
--       0 +      2/2 +      0/2   | <0> 1 | ... | 0 <1> |
-+       0 +      2/2 +      0/2   | <0> 1 2 ... | 0 <1> 2 |
--       0 +      3/2 +      0/2   | <0> 1 2 ... 0 1 <2> |
-+       0 +      3/2 +      0/2   | <0> 1 2 ... 0 1 <2> 3 |
--       0 +      4/2 +      0/2   | <0> 1 2 ... 1 2 <3> |
-+       0 +      4/2 +      0/2   | <0> 1 2 ... 1 2 <3> 4 |
--       0 +      5/2 +      0/2   | <0> 1 2 ... 2 3 <4> |
-+       0 +      5/2 +      0/2   | <0> 1 2 ... 2 3 <4> 5 |
--       0 +      6/2 +      0/2   | <0> 1 2 ... 3 4 <5> |
-+       0 +      6/2 +      0/2   | <0> 1 2 ... 3 4 <5> 6 |
--       0 +      7/2 +      0/2   | <0> 1 2 ... 1 2 <3> 4 5 ... 4 5 <6> |
-+       0 +      7/2 +      0/2   | <0> 1 2 ... 1 2 <3> 4 5 ... 4 5 <6> 7 |
--       0 +      8/2 +      0/2   | <0> 1 2 ... 1 2 <3> 4 5 ... 5 6 <7> |
-+       0 +      8/2 +      0/2   | <0> 1 2 ... 1 2 <3> 4 5 ... 5 6 <7> 8 |
--       0 +      9/2 +      0/2   | <0> 1 2 ... 2 3 <4> 5 6 ... 6 7 <8> |
-+       0 +      9/2 +      0/2   | <0> 1 2 ... 2 3 <4> 5 6 ... 6 7 <8> 9 |
-c       0 +     10/2 +      0/2   | <0> 1 2 ... 2 3 <4> 5 6 ... 7 8 <9> |
--       0 +     10/2 +      1/2   | 0 <1> 2 3 ... 3 4 <5> 6 7 ... 7 8 <9> |
-+       0 +     10/2 +      1/2   | <1> 2 3 ... 3 4 <5> 6 7 ... 7 8 <9> |
--       0 +     10/2 +      2/2   | 1 <2> 3 4 ... 3 4 <5> 6 7 ... 7 8 <9> |
-+       0 +     10/2 +      2/2   | <2> 3 4 ... 3 4 <5> 6 7 ... 7 8 <9> |
--       0 +     10/2 +      3/2   | 2 <3> 4 5 ... 4 5 <6> 7 8 ... 7 8 <9> |
-+       0 +     10/2 +      3/2   | <3> 4 5 ... 4 5 <6> 7 8 ... 7 8 <9> |
--       0 +     10/2 +      4/2   | 3 <4> 5 6 ... 7 8 <9> |
-+       0 +     10/2 +      4/2   | <4> 5 6 ... 7 8 <9> |
--       0 +     10/2 +      5/2   | 4 <5> 6 7 ... 7 8 <9> |
-+       0 +     10/2 +      5/2   | <5> 6 7 ... 7 8 <9> |
--       0 +     10/2 +      6/2   | 5 <6> 7 8 ... 7 8 <9> |
-+       0 +     10/2 +      6/2   | <6> 7 8 ... 7 8 <9> |
--       0 +     10/2 +      7/2   | 6 <7> 8 9 ... 7 8 <9> |
-+       0 +     10/2 +      7/2   | <7> 8 9 ... 7 8 <9> |
--       0 +     10/2 +      8/2   | 7 <8> 9 | ... 7 8 <9> |
-+       0 +     10/2 +      8/2   | <8> 9 | ... | 8 <9> |
--       0 +     10/2 +      9/2   | 8 <9> | ... | 8 <9> |
-+       0 +     10/2 +      9/2   | <9> | ... | <9> |
-D       0 +     10/2 +     10/2   (list is empty)
-d       0 +     10/2 +     10/2   (list is empty)
+a       0 +      0/2 +      0/2,      0@e      0_u   (list is empty)
+b       0 +      0/2 +      0/2,      0@e      0_u   (list is empty)
+-       0 +      1/2 +      0/2,      0@e      0_u   v0..0  | <0> | ... | <0> |
++       0 +      1/2 +      0/2,      0@e      0_u   v0..0  | <0> 1 | ... | <0> 1 |
+-       0 +      2/2 +      0/2,      0@e      0_u   v0..1  | <0> 1 | ... | 0 <1> |
++       0 +      2/2 +      0/2,      0@e      0_u   v0..1  | <0> 1 2 | ... | 0 <1> 2 |
+-       0 +      3/2 +      0/2,      0@e      0_u   v0..2  | <0> 1 2 | ... | 0 1 <2> |
++       0 +      3/2 +      0/2,      0@e      0_u   v0..2  | <0> 1 2 3 | ... | 0 1 <2> 3 |
+-       0 +      4/2 +      0/2,      0@e      0_u   v0..3  | <0> 1 2 3 | ... | 0 1 2 <3> |
++       0 +      4/2 +      0/2,      0@e      0_u   v0..3  | <0> 1 2 3 4 | ... | 0 1 2 <3> 4 |
+-       0 +      5/2 +      0/2,      0@e      0_u   v0..4  | <0> 1 2 3 4 | ... | 0 1 2 3 <4> |
++       0 +      5/2 +      0/2,      0@e      0_u   v0..4  | <0> 1 2 3 4 5 | ... | 0 1 2 3 <4> 5 |
+-       0 +      6/2 +      0/2,      0@e      0_u   v0..5  | <0> 1 2 3 4 5 | ... | 0 1 2 3 4 <5> |
++       0 +      6/2 +      0/2,      0@e      0_u   v0..5  | <0> 1 2 3 4 5 6 ... | 0 1 2 3 4 <5> 6 |
+-       0 +      7/2 +      0/2,      0@e      0_u   v0..6  | <0> 1 2 3 4 5 6 ... 0 1 2 3 4 5 <6> |
++       0 +      7/2 +      0/2,      0@e      0_u   v0..6  | <0> 1 2 3 4 5 6 ... 0 1 2 3 4 5 <6> 7 |
+-       0 +      8/2 +      0/2,      0@e      0_u   v0..7  | <0> 1 2 3 4 5 6 ... 1 2 3 4 5 6 <7> |
++       0 +      8/2 +      0/2,      0@e      0_u   v0..7  | <0> 1 2 3 4 5 6 ... 1 2 3 4 5 6 <7> 8 |
+-       0 +      9/2 +      0/2,      0@e      0_u   v0..8  | <0> 1 2 3 4 5 6 ... 2 3 4 5 6 7 <8> |
++       0 +      9/2 +      0/2,      0@e      0_u   v0..8  | <0> 1 2 3 4 5 6 ... 2 3 4 5 6 7 <8> 9 |
+c       0 +     10/2 +      0/2,      0@e      0_u   v0..9  | <0> 1 2 3 4 5 6 ... 3 4 5 6 7 8 <9> |
+-       0 +     10/2 +      1/2,      0@e      1_u   v1..9  | 0 <1> 2 3 4 5 6 7 ... 3 4 5 6 7 8 <9> |
++       0 +     10/2 +      1/2,      0@e      1_u   v1..9  | <1> 2 3 4 5 6 7 ... 3 4 5 6 7 8 <9> |
+-       0 +     10/2 +      2/2,      0@e      2_u   v2..9  | 1 <2> 3 4 5 6 7 8 ... 3 4 5 6 7 8 <9> |
++       0 +     10/2 +      2/2,      0@e      2_u   v2..9  | <2> 3 4 5 6 7 8 ... 3 4 5 6 7 8 <9> |
+-       0 +     10/2 +      3/2,      0@e      3_u   v3..9  | 2 <3> 4 5 6 7 8 9 ... 3 4 5 6 7 8 <9> |
++       0 +     10/2 +      3/2,      0@e      3_u   v3..9  | <3> 4 5 6 7 8 9 ... 3 4 5 6 7 8 <9> |
+-       0 +     10/2 +      4/2,      0@e      4_u   v4..9  | 3 <4> 5 6 7 8 9 | ... 3 4 5 6 7 8 <9> |
++       0 +     10/2 +      4/2,      0@e      4_u   v4..9  | <4> 5 6 7 8 9 | ... | 4 5 6 7 8 <9> |
+-       0 +     10/2 +      5/2,      0@e      5_u   v5..9  | 4 <5> 6 7 8 9 | ... | 4 5 6 7 8 <9> |
++       0 +     10/2 +      5/2,      0@e      5_u   v5..9  | <5> 6 7 8 9 | ... | 5 6 7 8 <9> |
+-       0 +     10/2 +      6/2,      0@e      6_u   v6..9  | 5 <6> 7 8 9 | ... | 5 6 7 8 <9> |
++       0 +     10/2 +      6/2,      0@e      6_u   v6..9  | <6> 7 8 9 | ... | 6 7 8 <9> |
+-       0 +     10/2 +      7/2,      0@e      7_u   v7..9  | 6 <7> 8 9 | ... | 6 7 8 <9> |
++       0 +     10/2 +      7/2,      0@e      7_u   v7..9  | <7> 8 9 | ... | 7 8 <9> |
+-       0 +     10/2 +      8/2,      0@e      8_u   v8..9  | 7 <8> 9 | ... | 7 8 <9> |
++       0 +     10/2 +      8/2,      0@e      8_u   v8..9  | <8> 9 | ... | 8 <9> |
+-       0 +     10/2 +      9/2,      0@e      9_u   v9..9  | 8 <9> | ... | 8 <9> |
++       0 +     10/2 +      9/2,      0@e      9_u   v9..9  | <9> | ... | <9> |
+D       0 +     10/2 +     10/2,      0@e     10_u   (list is empty)
+d       0 +     10/2 +     10/2,      0@e     10_u   (list is empty)
 e       0 + ? (rolling over)
 f      10 + ? (rolling over)
-g      10 +      0/2 +      0/2   (list is empty)
-a      10 +      0/2 +      0/2   (list is empty)
-b      10 +      0/2 +      0/2   (list is empty)
--      10 +      1/2 +      0/2   | <0> | ... | <0> |
-+      10 +      1/2 +      0/2   | <0> 1 | ... | <0> 1 |
--      10 +      2/2 +      0/2   | <0> 1 | ... | 0 <1> |
-+      10 +      2/2 +      0/2   | <0> 1 2 ... | 0 <1> 2 |
--      10 +      3/2 +      0/2   | <0> 1 2 ... 0 1 <2> |
-+      10 +      3/2 +      0/2   | <0> 1 2 ... 0 1 <2> 3 |
--      10 +      4/2 +      0/2   | <0> 1 2 ... 1 2 <3> |
-+      10 +      4/2 +      0/2   | <0> 1 2 ... 1 2 <3> 4 |
--      10 +      5/2 +      0/2   | <0> 1 2 ... 2 3 <4> |
-+      10 +      5/2 +      0/2   | <0> 1 2 ... 2 3 <4> 5 |
--      10 +      6/2 +      0/2   | <0> 1 2 ... 3 4 <5> |
-+      10 +      6/2 +      0/2   | <0> 1 2 ... 3 4 <5> 6 |
--      10 +      7/2 +      0/2   | <0> 1 2 ... 1 2 <3> 4 5 ... 4 5 <6> |
-+      10 +      7/2 +      0/2   | <0> 1 2 ... 1 2 <3> 4 5 ... 4 5 <6> 7 |
--      10 +      8/2 +      0/2   | <0> 1 2 ... 1 2 <3> 4 5 ... 5 6 <7> |
-+      10 +      8/2 +      0/2   | <0> 1 2 ... 1 2 <3> 4 5 ... 5 6 <7> 8 |
--      10 +      9/2 +      0/2   | <0> 1 2 ... 2 3 <4> 5 6 ... 6 7 <8> |
-+      10 +      9/2 +      0/2   | <0> 1 2 ... 2 3 <4> 5 6 ... 6 7 <8> 9 |
-c      10 +     10/2 +      0/2   | <0> 1 2 ... 2 3 <4> 5 6 ... 7 8 <9> |
--      10 +     10/2 +      1/2   | 0 <1> 2 3 ... 3 4 <5> 6 7 ... 7 8 <9> |
-+      10 +     10/2 +      1/2   | <1> 2 3 ... 3 4 <5> 6 7 ... 7 8 <9> |
--      10 +     10/2 +      2/2   | 1 <2> 3 4 ... 3 4 <5> 6 7 ... 7 8 <9> |
-+      10 +     10/2 +      2/2   | <2> 3 4 ... 3 4 <5> 6 7 ... 7 8 <9> |
--      10 +     10/2 +      3/2   | 2 <3> 4 5 ... 4 5 <6> 7 8 ... 7 8 <9> |
-+      10 +     10/2 +      3/2   | <3> 4 5 ... 4 5 <6> 7 8 ... 7 8 <9> |
--      10 +     10/2 +      4/2   | 3 <4> 5 6 ... 7 8 <9> |
-+      10 +     10/2 +      4/2   | <4> 5 6 ... 7 8 <9> |
--      10 +     10/2 +      5/2   | 4 <5> 6 7 ... 7 8 <9> |
-+      10 +     10/2 +      5/2   | <5> 6 7 ... 7 8 <9> |
--      10 +     10/2 +      6/2   | 5 <6> 7 8 ... 7 8 <9> |
-+      10 +     10/2 +      6/2   | <6> 7 8 ... 7 8 <9> |
--      10 +     10/2 +      7/2   | 6 <7> 8 9 ... 7 8 <9> |
-+      10 +     10/2 +      7/2   | <7> 8 9 ... 7 8 <9> |
--      10 +     10/2 +      8/2   | 7 <8> 9 | ... 7 8 <9> |
-+      10 +     10/2 +      8/2   | <8> 9 | ... | 8 <9> |
--      10 +     10/2 +      9/2   | 8 <9> | ... | 8 <9> |
-+      10 +     10/2 +      9/2   | <9> | ... | <9> |
-D      10 +     10/2 +     10/2   (list is empty)
-d      10 +     10/2 +     10/2   (list is empty)
+g      10 +      0/2 +      0/2,      0@e      0_u   (list is empty)
+a      10 +      0/2 +      0/2,      0@e      0_u   (list is empty)
+b      10 +      0/2 +      0/2,      0@e      0_u   (list is empty)
+-      10 +      1/2 +      0/2,      0@e      0_u   v0..0  | <0> | ... | <0> |
++      10 +      1/2 +      0/2,      0@e      0_u   v0..0  | <0> 1 | ... | <0> 1 |
+-      10 +      2/2 +      0/2,      0@e      0_u   v0..1  | <0> 1 | ... | 0 <1> |
++      10 +      2/2 +      0/2,      0@e      0_u   v0..1  | <0> 1 2 | ... | 0 <1> 2 |
+-      10 +      3/2 +      0/2,      0@e      0_u   v0..2  | <0> 1 2 | ... | 0 1 <2> |
++      10 +      3/2 +      0/2,      0@e      0_u   v0..2  | <0> 1 2 3 | ... | 0 1 <2> 3 |
+-      10 +      4/2 +      0/2,      0@e      0_u   v0..3  | <0> 1 2 3 | ... | 0 1 2 <3> |
++      10 +      4/2 +      0/2,      0@e      0_u   v0..3  | <0> 1 2 3 4 | ... | 0 1 2 <3> 4 |
+-      10 +      5/2 +      0/2,      0@e      0_u   v0..4  | <0> 1 2 3 4 | ... | 0 1 2 3 <4> |
++      10 +      5/2 +      0/2,      0@e      0_u   v0..4  | <0> 1 2 3 4 5 | ... | 0 1 2 3 <4> 5 |
+-      10 +      6/2 +      0/2,      0@e      0_u   v0..5  | <0> 1 2 3 4 5 | ... | 0 1 2 3 4 <5> |
++      10 +      6/2 +      0/2,      0@e      0_u   v0..5  | <0> 1 2 3 4 5 6 ... | 0 1 2 3 4 <5> 6 |
+-      10 +      7/2 +      0/2,      0@e      0_u   v0..6  | <0> 1 2 3 4 5 6 ... 0 1 2 3 4 5 <6> |
++      10 +      7/2 +      0/2,      0@e      0_u   v0..6  | <0> 1 2 3 4 5 6 ... 0 1 2 3 4 5 <6> 7 |
+-      10 +      8/2 +      0/2,      0@e      0_u   v0..7  | <0> 1 2 3 4 5 6 ... 1 2 3 4 5 6 <7> |
++      10 +      8/2 +      0/2,      0@e      0_u   v0..7  | <0> 1 2 3 4 5 6 ... 1 2 3 4 5 6 <7> 8 |
+-      10 +      9/2 +      0/2,      0@e      0_u   v0..8  | <0> 1 2 3 4 5 6 ... 2 3 4 5 6 7 <8> |
++      10 +      9/2 +      0/2,      0@e      0_u   v0..8  | <0> 1 2 3 4 5 6 ... 2 3 4 5 6 7 <8> 9 |
+c      10 +     10/2 +      0/2,      0@e      0_u   v0..9  | <0> 1 2 3 4 5 6 ... 3 4 5 6 7 8 <9> |
+-      10 +     10/2 +      1/2,      0@e      1_u   v1..9  | 0 <1> 2 3 4 5 6 7 ... 3 4 5 6 7 8 <9> |
++      10 +     10/2 +      1/2,      0@e      1_u   v1..9  | <1> 2 3 4 5 6 7 ... 3 4 5 6 7 8 <9> |
+-      10 +     10/2 +      2/2,      0@e      2_u   v2..9  | 1 <2> 3 4 5 6 7 8 ... 3 4 5 6 7 8 <9> |
++      10 +     10/2 +      2/2,      0@e      2_u   v2..9  | <2> 3 4 5 6 7 8 ... 3 4 5 6 7 8 <9> |
+-      10 +     10/2 +      3/2,      0@e      3_u   v3..9  | 2 <3> 4 5 6 7 8 9 ... 3 4 5 6 7 8 <9> |
++      10 +     10/2 +      3/2,      0@e      3_u   v3..9  | <3> 4 5 6 7 8 9 ... 3 4 5 6 7 8 <9> |
+-      10 +     10/2 +      4/2,      0@e      4_u   v4..9  | 3 <4> 5 6 7 8 9 | ... 3 4 5 6 7 8 <9> |
++      10 +     10/2 +      4/2,      0@e      4_u   v4..9  | <4> 5 6 7 8 9 | ... | 4 5 6 7 8 <9> |
+-      10 +     10/2 +      5/2,      0@e      5_u   v5..9  | 4 <5> 6 7 8 9 | ... | 4 5 6 7 8 <9> |
++      10 +     10/2 +      5/2,      0@e      5_u   v5..9  | <5> 6 7 8 9 | ... | 5 6 7 8 <9> |
+-      10 +     10/2 +      6/2,      0@e      6_u   v6..9  | 5 <6> 7 8 9 | ... | 5 6 7 8 <9> |
++      10 +     10/2 +      6/2,      0@e      6_u   v6..9  | <6> 7 8 9 | ... | 6 7 8 <9> |
+-      10 +     10/2 +      7/2,      0@e      7_u   v7..9  | 6 <7> 8 9 | ... | 6 7 8 <9> |
++      10 +     10/2 +      7/2,      0@e      7_u   v7..9  | <7> 8 9 | ... | 7 8 <9> |
+-      10 +     10/2 +      8/2,      0@e      8_u   v8..9  | 7 <8> 9 | ... | 7 8 <9> |
++      10 +     10/2 +      8/2,      0@e      8_u   v8..9  | <8> 9 | ... | 8 <9> |
+-      10 +     10/2 +      9/2,      0@e      9_u   v9..9  | 8 <9> | ... | 8 <9> |
++      10 +     10/2 +      9/2,      0@e      9_u   v9..9  | <9> | ... | <9> |
+D      10 +     10/2 +     10/2,      0@e     10_u   (list is empty)
+d      10 +     10/2 +     10/2,      0@e     10_u   (list is empty)
 e      10 + ? (rolling over)
 f      20 + ? (rolling over)
-g      20 +      0/2 +      0/2   (list is empty)
+g      20 +      0/2 +      0/2,      0@e      0_u   (list is empty)
 
Index: doc/theses/mike_brooks_MMath/benchmarks/list/expect.stack-insfirst.txt
===================================================================
--- doc/theses/mike_brooks_MMath/benchmarks/list/expect.stack-insfirst.txt	(revision 39ffa5e134a180ed0450785d9712d55c8f10036a)
+++ doc/theses/mike_brooks_MMath/benchmarks/list/expect.stack-insfirst.txt	(revision 81e1984bc450631534fe266ecbbd83ed5d17c16c)
@@ -1,89 +1,89 @@
-a       0 +      0/2 +      0/2   (list is empty)
-b       0 +      0/2 +      0/2   (list is empty)
--       0 +      1/2 +      0/2   | <0> | ... | <0> |
-+       0 +      1/2 +      0/2   | 1 <0> | ... | 1 <0> |
--       0 +      2/2 +      0/2   | <1> 0 | ... | 1 <0> |
-+       0 +      2/2 +      0/2   | 2 <1> 0 | ... 2 1 <0> |
--       0 +      3/2 +      0/2   | <2> 1 0 ... 2 1 <0> |
-+       0 +      3/2 +      0/2   | 3 <2> 1 0 ... 2 1 <0> |
--       0 +      4/2 +      0/2   | <3> 2 1 ... 2 1 <0> |
-+       0 +      4/2 +      0/2   | 4 <3> 2 1 ... 2 1 <0> |
--       0 +      5/2 +      0/2   | <4> 3 2 ... 2 1 <0> |
-+       0 +      5/2 +      0/2   | 5 <4> 3 2 ... 2 1 <0> |
--       0 +      6/2 +      0/2   | <5> 4 3 ... 2 1 <0> |
-+       0 +      6/2 +      0/2   | 6 <5> 4 3 ... 2 1 <0> |
--       0 +      7/2 +      0/2   | <6> 5 4 ... 5 4 <3> 2 1 ... 2 1 <0> |
-+       0 +      7/2 +      0/2   | 7 <6> 5 4 ... 5 4 <3> 2 1 ... 2 1 <0> |
--       0 +      8/2 +      0/2   | <7> 6 5 ... 5 4 <3> 2 1 ... 2 1 <0> |
-+       0 +      8/2 +      0/2   | 8 <7> 6 5 ... 5 4 <3> 2 1 ... 2 1 <0> |
--       0 +      9/2 +      0/2   | <8> 7 6 ... 6 5 <4> 3 2 ... 2 1 <0> |
-+       0 +      9/2 +      0/2   | 9 <8> 7 6 ... 6 5 <4> 3 2 ... 2 1 <0> |
-c       0 +     10/2 +      0/2   | <9> 8 7 ... 6 5 <4> 3 2 ... 2 1 <0> |
--       0 +     10/2 +      1/2   | 9 <8> 7 6 ... 6 5 <4> 3 2 ... 2 1 <0> |
-+       0 +     10/2 +      1/2   | <8> 7 6 ... 6 5 <4> 3 2 ... 2 1 <0> |
--       0 +     10/2 +      2/2   | 8 <7> 6 5 ... 5 4 <3> 2 1 ... 2 1 <0> |
-+       0 +     10/2 +      2/2   | <7> 6 5 ... 5 4 <3> 2 1 ... 2 1 <0> |
--       0 +     10/2 +      3/2   | 7 <6> 5 4 ... 5 4 <3> 2 1 ... 2 1 <0> |
-+       0 +     10/2 +      3/2   | <6> 5 4 ... 5 4 <3> 2 1 ... 2 1 <0> |
--       0 +     10/2 +      4/2   | 6 <5> 4 3 ... 2 1 <0> |
-+       0 +     10/2 +      4/2   | <5> 4 3 ... 2 1 <0> |
--       0 +     10/2 +      5/2   | 5 <4> 3 2 ... 2 1 <0> |
-+       0 +     10/2 +      5/2   | <4> 3 2 ... 2 1 <0> |
--       0 +     10/2 +      6/2   | 4 <3> 2 1 ... 2 1 <0> |
-+       0 +     10/2 +      6/2   | <3> 2 1 ... 2 1 <0> |
--       0 +     10/2 +      7/2   | 3 <2> 1 0 ... 2 1 <0> |
-+       0 +     10/2 +      7/2   | <2> 1 0 ... 2 1 <0> |
--       0 +     10/2 +      8/2   | 2 <1> 0 | ... 2 1 <0> |
-+       0 +     10/2 +      8/2   | <1> 0 | ... | 1 <0> |
--       0 +     10/2 +      9/2   | 1 <0> | ... | 1 <0> |
-+       0 +     10/2 +      9/2   | <0> | ... | <0> |
-D       0 +     10/2 +     10/2   (list is empty)
-d       0 +     10/2 +     10/2   (list is empty)
+a       0 +      0/2 +      0/2,      0@e      0_u   (list is empty)
+b       0 +      0/2 +      0/2,      0@e      0_u   (list is empty)
+-       0 +      1/2 +      0/2,      0@e      0_u   v0..0  | <0> | ... | <0> |
++       0 +      1/2 +      0/2,      0@e      0_u   v0..0  | 1 <0> | ... | 1 <0> |
+-       0 +      2/2 +      0/2,      0@e      0_u   v1..0  | <1> 0 | ... | 1 <0> |
++       0 +      2/2 +      0/2,      0@e      0_u   v1..0  | 2 <1> 0 | ... | 2 1 <0> |
+-       0 +      3/2 +      0/2,      0@e      0_u   v2..0  | <2> 1 0 | ... | 2 1 <0> |
++       0 +      3/2 +      0/2,      0@e      0_u   v2..0  | 3 <2> 1 0 | ... | 3 2 1 <0> |
+-       0 +      4/2 +      0/2,      0@e      0_u   v3..0  | <3> 2 1 0 | ... | 3 2 1 <0> |
++       0 +      4/2 +      0/2,      0@e      0_u   v3..0  | 4 <3> 2 1 0 | ... | 4 3 2 1 <0> |
+-       0 +      5/2 +      0/2,      0@e      0_u   v4..0  | <4> 3 2 1 0 | ... | 4 3 2 1 <0> |
++       0 +      5/2 +      0/2,      0@e      0_u   v4..0  | 5 <4> 3 2 1 0 | ... | 5 4 3 2 1 <0> |
+-       0 +      6/2 +      0/2,      0@e      0_u   v5..0  | <5> 4 3 2 1 0 | ... | 5 4 3 2 1 <0> |
++       0 +      6/2 +      0/2,      0@e      0_u   v5..0  | 6 <5> 4 3 2 1 0 | ... 6 5 4 3 2 1 <0> |
+-       0 +      7/2 +      0/2,      0@e      0_u   v6..0  | <6> 5 4 3 2 1 0 ... 6 5 4 3 2 1 <0> |
++       0 +      7/2 +      0/2,      0@e      0_u   v6..0  | 7 <6> 5 4 3 2 1 0 ... 6 5 4 3 2 1 <0> |
+-       0 +      8/2 +      0/2,      0@e      0_u   v7..0  | <7> 6 5 4 3 2 1 ... 6 5 4 3 2 1 <0> |
++       0 +      8/2 +      0/2,      0@e      0_u   v7..0  | 8 <7> 6 5 4 3 2 1 ... 6 5 4 3 2 1 <0> |
+-       0 +      9/2 +      0/2,      0@e      0_u   v8..0  | <8> 7 6 5 4 3 2 ... 6 5 4 3 2 1 <0> |
++       0 +      9/2 +      0/2,      0@e      0_u   v8..0  | 9 <8> 7 6 5 4 3 2 ... 6 5 4 3 2 1 <0> |
+c       0 +     10/2 +      0/2,      0@e      0_u   v9..0  | <9> 8 7 6 5 4 3 ... 6 5 4 3 2 1 <0> |
+-       0 +     10/2 +      1/2,      0@e      1_u   v8..0  | 9 <8> 7 6 5 4 3 2 ... 6 5 4 3 2 1 <0> |
++       0 +     10/2 +      1/2,      0@e      1_u   v8..0  | <8> 7 6 5 4 3 2 ... 6 5 4 3 2 1 <0> |
+-       0 +     10/2 +      2/2,      0@e      2_u   v7..0  | 8 <7> 6 5 4 3 2 1 ... 6 5 4 3 2 1 <0> |
++       0 +     10/2 +      2/2,      0@e      2_u   v7..0  | <7> 6 5 4 3 2 1 ... 6 5 4 3 2 1 <0> |
+-       0 +     10/2 +      3/2,      0@e      3_u   v6..0  | 7 <6> 5 4 3 2 1 0 ... 6 5 4 3 2 1 <0> |
++       0 +     10/2 +      3/2,      0@e      3_u   v6..0  | <6> 5 4 3 2 1 0 ... 6 5 4 3 2 1 <0> |
+-       0 +     10/2 +      4/2,      0@e      4_u   v5..0  | 6 <5> 4 3 2 1 0 | ... 6 5 4 3 2 1 <0> |
++       0 +     10/2 +      4/2,      0@e      4_u   v5..0  | <5> 4 3 2 1 0 | ... | 5 4 3 2 1 <0> |
+-       0 +     10/2 +      5/2,      0@e      5_u   v4..0  | 5 <4> 3 2 1 0 | ... | 5 4 3 2 1 <0> |
++       0 +     10/2 +      5/2,      0@e      5_u   v4..0  | <4> 3 2 1 0 | ... | 4 3 2 1 <0> |
+-       0 +     10/2 +      6/2,      0@e      6_u   v3..0  | 4 <3> 2 1 0 | ... | 4 3 2 1 <0> |
++       0 +     10/2 +      6/2,      0@e      6_u   v3..0  | <3> 2 1 0 | ... | 3 2 1 <0> |
+-       0 +     10/2 +      7/2,      0@e      7_u   v2..0  | 3 <2> 1 0 | ... | 3 2 1 <0> |
++       0 +     10/2 +      7/2,      0@e      7_u   v2..0  | <2> 1 0 | ... | 2 1 <0> |
+-       0 +     10/2 +      8/2,      0@e      8_u   v1..0  | 2 <1> 0 | ... | 2 1 <0> |
++       0 +     10/2 +      8/2,      0@e      8_u   v1..0  | <1> 0 | ... | 1 <0> |
+-       0 +     10/2 +      9/2,      0@e      9_u   v0..0  | 1 <0> | ... | 1 <0> |
++       0 +     10/2 +      9/2,      0@e      9_u   v0..0  | <0> | ... | <0> |
+D       0 +     10/2 +     10/2,      0@e     10_u   (list is empty)
+d       0 +     10/2 +     10/2,      0@e     10_u   (list is empty)
 e       0 + ? (rolling over)
 f      10 + ? (rolling over)
-g      10 +      0/2 +      0/2   (list is empty)
-a      10 +      0/2 +      0/2   (list is empty)
-b      10 +      0/2 +      0/2   (list is empty)
--      10 +      1/2 +      0/2   | <0> | ... | <0> |
-+      10 +      1/2 +      0/2   | 1 <0> | ... | 1 <0> |
--      10 +      2/2 +      0/2   | <1> 0 | ... | 1 <0> |
-+      10 +      2/2 +      0/2   | 2 <1> 0 | ... 2 1 <0> |
--      10 +      3/2 +      0/2   | <2> 1 0 ... 2 1 <0> |
-+      10 +      3/2 +      0/2   | 3 <2> 1 0 ... 2 1 <0> |
--      10 +      4/2 +      0/2   | <3> 2 1 ... 2 1 <0> |
-+      10 +      4/2 +      0/2   | 4 <3> 2 1 ... 2 1 <0> |
--      10 +      5/2 +      0/2   | <4> 3 2 ... 2 1 <0> |
-+      10 +      5/2 +      0/2   | 5 <4> 3 2 ... 2 1 <0> |
--      10 +      6/2 +      0/2   | <5> 4 3 ... 2 1 <0> |
-+      10 +      6/2 +      0/2   | 6 <5> 4 3 ... 2 1 <0> |
--      10 +      7/2 +      0/2   | <6> 5 4 ... 5 4 <3> 2 1 ... 2 1 <0> |
-+      10 +      7/2 +      0/2   | 7 <6> 5 4 ... 5 4 <3> 2 1 ... 2 1 <0> |
--      10 +      8/2 +      0/2   | <7> 6 5 ... 5 4 <3> 2 1 ... 2 1 <0> |
-+      10 +      8/2 +      0/2   | 8 <7> 6 5 ... 5 4 <3> 2 1 ... 2 1 <0> |
--      10 +      9/2 +      0/2   | <8> 7 6 ... 6 5 <4> 3 2 ... 2 1 <0> |
-+      10 +      9/2 +      0/2   | 9 <8> 7 6 ... 6 5 <4> 3 2 ... 2 1 <0> |
-c      10 +     10/2 +      0/2   | <9> 8 7 ... 6 5 <4> 3 2 ... 2 1 <0> |
--      10 +     10/2 +      1/2   | 9 <8> 7 6 ... 6 5 <4> 3 2 ... 2 1 <0> |
-+      10 +     10/2 +      1/2   | <8> 7 6 ... 6 5 <4> 3 2 ... 2 1 <0> |
--      10 +     10/2 +      2/2   | 8 <7> 6 5 ... 5 4 <3> 2 1 ... 2 1 <0> |
-+      10 +     10/2 +      2/2   | <7> 6 5 ... 5 4 <3> 2 1 ... 2 1 <0> |
--      10 +     10/2 +      3/2   | 7 <6> 5 4 ... 5 4 <3> 2 1 ... 2 1 <0> |
-+      10 +     10/2 +      3/2   | <6> 5 4 ... 5 4 <3> 2 1 ... 2 1 <0> |
--      10 +     10/2 +      4/2   | 6 <5> 4 3 ... 2 1 <0> |
-+      10 +     10/2 +      4/2   | <5> 4 3 ... 2 1 <0> |
--      10 +     10/2 +      5/2   | 5 <4> 3 2 ... 2 1 <0> |
-+      10 +     10/2 +      5/2   | <4> 3 2 ... 2 1 <0> |
--      10 +     10/2 +      6/2   | 4 <3> 2 1 ... 2 1 <0> |
-+      10 +     10/2 +      6/2   | <3> 2 1 ... 2 1 <0> |
--      10 +     10/2 +      7/2   | 3 <2> 1 0 ... 2 1 <0> |
-+      10 +     10/2 +      7/2   | <2> 1 0 ... 2 1 <0> |
--      10 +     10/2 +      8/2   | 2 <1> 0 | ... 2 1 <0> |
-+      10 +     10/2 +      8/2   | <1> 0 | ... | 1 <0> |
--      10 +     10/2 +      9/2   | 1 <0> | ... | 1 <0> |
-+      10 +     10/2 +      9/2   | <0> | ... | <0> |
-D      10 +     10/2 +     10/2   (list is empty)
-d      10 +     10/2 +     10/2   (list is empty)
+g      10 +      0/2 +      0/2,      0@e      0_u   (list is empty)
+a      10 +      0/2 +      0/2,      0@e      0_u   (list is empty)
+b      10 +      0/2 +      0/2,      0@e      0_u   (list is empty)
+-      10 +      1/2 +      0/2,      0@e      0_u   v0..0  | <0> | ... | <0> |
++      10 +      1/2 +      0/2,      0@e      0_u   v0..0  | 1 <0> | ... | 1 <0> |
+-      10 +      2/2 +      0/2,      0@e      0_u   v1..0  | <1> 0 | ... | 1 <0> |
++      10 +      2/2 +      0/2,      0@e      0_u   v1..0  | 2 <1> 0 | ... | 2 1 <0> |
+-      10 +      3/2 +      0/2,      0@e      0_u   v2..0  | <2> 1 0 | ... | 2 1 <0> |
++      10 +      3/2 +      0/2,      0@e      0_u   v2..0  | 3 <2> 1 0 | ... | 3 2 1 <0> |
+-      10 +      4/2 +      0/2,      0@e      0_u   v3..0  | <3> 2 1 0 | ... | 3 2 1 <0> |
++      10 +      4/2 +      0/2,      0@e      0_u   v3..0  | 4 <3> 2 1 0 | ... | 4 3 2 1 <0> |
+-      10 +      5/2 +      0/2,      0@e      0_u   v4..0  | <4> 3 2 1 0 | ... | 4 3 2 1 <0> |
++      10 +      5/2 +      0/2,      0@e      0_u   v4..0  | 5 <4> 3 2 1 0 | ... | 5 4 3 2 1 <0> |
+-      10 +      6/2 +      0/2,      0@e      0_u   v5..0  | <5> 4 3 2 1 0 | ... | 5 4 3 2 1 <0> |
++      10 +      6/2 +      0/2,      0@e      0_u   v5..0  | 6 <5> 4 3 2 1 0 | ... 6 5 4 3 2 1 <0> |
+-      10 +      7/2 +      0/2,      0@e      0_u   v6..0  | <6> 5 4 3 2 1 0 ... 6 5 4 3 2 1 <0> |
++      10 +      7/2 +      0/2,      0@e      0_u   v6..0  | 7 <6> 5 4 3 2 1 0 ... 6 5 4 3 2 1 <0> |
+-      10 +      8/2 +      0/2,      0@e      0_u   v7..0  | <7> 6 5 4 3 2 1 ... 6 5 4 3 2 1 <0> |
++      10 +      8/2 +      0/2,      0@e      0_u   v7..0  | 8 <7> 6 5 4 3 2 1 ... 6 5 4 3 2 1 <0> |
+-      10 +      9/2 +      0/2,      0@e      0_u   v8..0  | <8> 7 6 5 4 3 2 ... 6 5 4 3 2 1 <0> |
++      10 +      9/2 +      0/2,      0@e      0_u   v8..0  | 9 <8> 7 6 5 4 3 2 ... 6 5 4 3 2 1 <0> |
+c      10 +     10/2 +      0/2,      0@e      0_u   v9..0  | <9> 8 7 6 5 4 3 ... 6 5 4 3 2 1 <0> |
+-      10 +     10/2 +      1/2,      0@e      1_u   v8..0  | 9 <8> 7 6 5 4 3 2 ... 6 5 4 3 2 1 <0> |
++      10 +     10/2 +      1/2,      0@e      1_u   v8..0  | <8> 7 6 5 4 3 2 ... 6 5 4 3 2 1 <0> |
+-      10 +     10/2 +      2/2,      0@e      2_u   v7..0  | 8 <7> 6 5 4 3 2 1 ... 6 5 4 3 2 1 <0> |
++      10 +     10/2 +      2/2,      0@e      2_u   v7..0  | <7> 6 5 4 3 2 1 ... 6 5 4 3 2 1 <0> |
+-      10 +     10/2 +      3/2,      0@e      3_u   v6..0  | 7 <6> 5 4 3 2 1 0 ... 6 5 4 3 2 1 <0> |
++      10 +     10/2 +      3/2,      0@e      3_u   v6..0  | <6> 5 4 3 2 1 0 ... 6 5 4 3 2 1 <0> |
+-      10 +     10/2 +      4/2,      0@e      4_u   v5..0  | 6 <5> 4 3 2 1 0 | ... 6 5 4 3 2 1 <0> |
++      10 +     10/2 +      4/2,      0@e      4_u   v5..0  | <5> 4 3 2 1 0 | ... | 5 4 3 2 1 <0> |
+-      10 +     10/2 +      5/2,      0@e      5_u   v4..0  | 5 <4> 3 2 1 0 | ... | 5 4 3 2 1 <0> |
++      10 +     10/2 +      5/2,      0@e      5_u   v4..0  | <4> 3 2 1 0 | ... | 4 3 2 1 <0> |
+-      10 +     10/2 +      6/2,      0@e      6_u   v3..0  | 4 <3> 2 1 0 | ... | 4 3 2 1 <0> |
++      10 +     10/2 +      6/2,      0@e      6_u   v3..0  | <3> 2 1 0 | ... | 3 2 1 <0> |
+-      10 +     10/2 +      7/2,      0@e      7_u   v2..0  | 3 <2> 1 0 | ... | 3 2 1 <0> |
++      10 +     10/2 +      7/2,      0@e      7_u   v2..0  | <2> 1 0 | ... | 2 1 <0> |
+-      10 +     10/2 +      8/2,      0@e      8_u   v1..0  | 2 <1> 0 | ... | 2 1 <0> |
++      10 +     10/2 +      8/2,      0@e      8_u   v1..0  | <1> 0 | ... | 1 <0> |
+-      10 +     10/2 +      9/2,      0@e      9_u   v0..0  | 1 <0> | ... | 1 <0> |
++      10 +     10/2 +      9/2,      0@e      9_u   v0..0  | <0> | ... | <0> |
+D      10 +     10/2 +     10/2,      0@e     10_u   (list is empty)
+d      10 +     10/2 +     10/2,      0@e     10_u   (list is empty)
 e      10 + ? (rolling over)
 f      20 + ? (rolling over)
-g      20 +      0/2 +      0/2   (list is empty)
+g      20 +      0/2 +      0/2,      0@e      0_u   (list is empty)
 
Index: doc/theses/mike_brooks_MMath/benchmarks/list/expect.stack-inslast.txt
===================================================================
--- doc/theses/mike_brooks_MMath/benchmarks/list/expect.stack-inslast.txt	(revision 39ffa5e134a180ed0450785d9712d55c8f10036a)
+++ doc/theses/mike_brooks_MMath/benchmarks/list/expect.stack-inslast.txt	(revision 81e1984bc450631534fe266ecbbd83ed5d17c16c)
@@ -1,89 +1,89 @@
-a       0 +      0/2 +      0/2   (list is empty)
-b       0 +      0/2 +      0/2   (list is empty)
--       0 +      1/2 +      0/2   | <0> | ... | <0> |
-+       0 +      1/2 +      0/2   | <0> 1 | ... | <0> 1 |
--       0 +      2/2 +      0/2   | <0> 1 | ... | 0 <1> |
-+       0 +      2/2 +      0/2   | <0> 1 2 ... | 0 <1> 2 |
--       0 +      3/2 +      0/2   | <0> 1 2 ... 0 1 <2> |
-+       0 +      3/2 +      0/2   | <0> 1 2 ... 0 1 <2> 3 |
--       0 +      4/2 +      0/2   | <0> 1 2 ... 1 2 <3> |
-+       0 +      4/2 +      0/2   | <0> 1 2 ... 1 2 <3> 4 |
--       0 +      5/2 +      0/2   | <0> 1 2 ... 2 3 <4> |
-+       0 +      5/2 +      0/2   | <0> 1 2 ... 2 3 <4> 5 |
--       0 +      6/2 +      0/2   | <0> 1 2 ... 3 4 <5> |
-+       0 +      6/2 +      0/2   | <0> 1 2 ... 3 4 <5> 6 |
--       0 +      7/2 +      0/2   | <0> 1 2 ... 1 2 <3> 4 5 ... 4 5 <6> |
-+       0 +      7/2 +      0/2   | <0> 1 2 ... 1 2 <3> 4 5 ... 4 5 <6> 7 |
--       0 +      8/2 +      0/2   | <0> 1 2 ... 1 2 <3> 4 5 ... 5 6 <7> |
-+       0 +      8/2 +      0/2   | <0> 1 2 ... 1 2 <3> 4 5 ... 5 6 <7> 8 |
--       0 +      9/2 +      0/2   | <0> 1 2 ... 2 3 <4> 5 6 ... 6 7 <8> |
-+       0 +      9/2 +      0/2   | <0> 1 2 ... 2 3 <4> 5 6 ... 6 7 <8> 9 |
-c       0 +     10/2 +      0/2   | <0> 1 2 ... 2 3 <4> 5 6 ... 7 8 <9> |
--       0 +     10/2 +      1/2   | <0> 1 2 ... 2 3 <4> 5 6 ... 6 7 <8> 9 |
-+       0 +     10/2 +      1/2   | <0> 1 2 ... 2 3 <4> 5 6 ... 6 7 <8> |
--       0 +     10/2 +      2/2   | <0> 1 2 ... 1 2 <3> 4 5 ... 5 6 <7> 8 |
-+       0 +     10/2 +      2/2   | <0> 1 2 ... 1 2 <3> 4 5 ... 5 6 <7> |
--       0 +     10/2 +      3/2   | <0> 1 2 ... 1 2 <3> 4 5 ... 4 5 <6> 7 |
-+       0 +     10/2 +      3/2   | <0> 1 2 ... 1 2 <3> 4 5 ... 4 5 <6> |
--       0 +     10/2 +      4/2   | <0> 1 2 ... 3 4 <5> 6 |
-+       0 +     10/2 +      4/2   | <0> 1 2 ... 3 4 <5> |
--       0 +     10/2 +      5/2   | <0> 1 2 ... 2 3 <4> 5 |
-+       0 +     10/2 +      5/2   | <0> 1 2 ... 2 3 <4> |
--       0 +     10/2 +      6/2   | <0> 1 2 ... 1 2 <3> 4 |
-+       0 +     10/2 +      6/2   | <0> 1 2 ... 1 2 <3> |
--       0 +     10/2 +      7/2   | <0> 1 2 ... 0 1 <2> 3 |
-+       0 +     10/2 +      7/2   | <0> 1 2 ... 0 1 <2> |
--       0 +     10/2 +      8/2   | <0> 1 2 ... | 0 <1> 2 |
-+       0 +     10/2 +      8/2   | <0> 1 | ... | 0 <1> |
--       0 +     10/2 +      9/2   | <0> 1 | ... | <0> 1 |
-+       0 +     10/2 +      9/2   | <0> | ... | <0> |
-D       0 +     10/2 +     10/2   (list is empty)
-d       0 +     10/2 +     10/2   (list is empty)
+a       0 +      0/2 +      0/2,      0@e      0_u   (list is empty)
+b       0 +      0/2 +      0/2,      0@e      0_u   (list is empty)
+-       0 +      1/2 +      0/2,      0@e      0_u   v0..0  | <0> | ... | <0> |
++       0 +      1/2 +      0/2,      0@e      0_u   v0..0  | <0> 1 | ... | <0> 1 |
+-       0 +      2/2 +      0/2,      0@e      0_u   v0..1  | <0> 1 | ... | 0 <1> |
++       0 +      2/2 +      0/2,      0@e      0_u   v0..1  | <0> 1 2 | ... | 0 <1> 2 |
+-       0 +      3/2 +      0/2,      0@e      0_u   v0..2  | <0> 1 2 | ... | 0 1 <2> |
++       0 +      3/2 +      0/2,      0@e      0_u   v0..2  | <0> 1 2 3 | ... | 0 1 <2> 3 |
+-       0 +      4/2 +      0/2,      0@e      0_u   v0..3  | <0> 1 2 3 | ... | 0 1 2 <3> |
++       0 +      4/2 +      0/2,      0@e      0_u   v0..3  | <0> 1 2 3 4 | ... | 0 1 2 <3> 4 |
+-       0 +      5/2 +      0/2,      0@e      0_u   v0..4  | <0> 1 2 3 4 | ... | 0 1 2 3 <4> |
++       0 +      5/2 +      0/2,      0@e      0_u   v0..4  | <0> 1 2 3 4 5 | ... | 0 1 2 3 <4> 5 |
+-       0 +      6/2 +      0/2,      0@e      0_u   v0..5  | <0> 1 2 3 4 5 | ... | 0 1 2 3 4 <5> |
++       0 +      6/2 +      0/2,      0@e      0_u   v0..5  | <0> 1 2 3 4 5 6 ... | 0 1 2 3 4 <5> 6 |
+-       0 +      7/2 +      0/2,      0@e      0_u   v0..6  | <0> 1 2 3 4 5 6 ... 0 1 2 3 4 5 <6> |
++       0 +      7/2 +      0/2,      0@e      0_u   v0..6  | <0> 1 2 3 4 5 6 ... 0 1 2 3 4 5 <6> 7 |
+-       0 +      8/2 +      0/2,      0@e      0_u   v0..7  | <0> 1 2 3 4 5 6 ... 1 2 3 4 5 6 <7> |
++       0 +      8/2 +      0/2,      0@e      0_u   v0..7  | <0> 1 2 3 4 5 6 ... 1 2 3 4 5 6 <7> 8 |
+-       0 +      9/2 +      0/2,      0@e      0_u   v0..8  | <0> 1 2 3 4 5 6 ... 2 3 4 5 6 7 <8> |
++       0 +      9/2 +      0/2,      0@e      0_u   v0..8  | <0> 1 2 3 4 5 6 ... 2 3 4 5 6 7 <8> 9 |
+c       0 +     10/2 +      0/2,      0@e      0_u   v0..9  | <0> 1 2 3 4 5 6 ... 3 4 5 6 7 8 <9> |
+-       0 +     10/2 +      1/2,      0@e      1_u   v0..8  | <0> 1 2 3 4 5 6 ... 2 3 4 5 6 7 <8> 9 |
++       0 +     10/2 +      1/2,      0@e      1_u   v0..8  | <0> 1 2 3 4 5 6 ... 2 3 4 5 6 7 <8> |
+-       0 +     10/2 +      2/2,      0@e      2_u   v0..7  | <0> 1 2 3 4 5 6 ... 1 2 3 4 5 6 <7> 8 |
++       0 +     10/2 +      2/2,      0@e      2_u   v0..7  | <0> 1 2 3 4 5 6 ... 1 2 3 4 5 6 <7> |
+-       0 +     10/2 +      3/2,      0@e      3_u   v0..6  | <0> 1 2 3 4 5 6 ... 0 1 2 3 4 5 <6> 7 |
++       0 +     10/2 +      3/2,      0@e      3_u   v0..6  | <0> 1 2 3 4 5 6 ... 0 1 2 3 4 5 <6> |
+-       0 +     10/2 +      4/2,      0@e      4_u   v0..5  | <0> 1 2 3 4 5 6 ... | 0 1 2 3 4 <5> 6 |
++       0 +     10/2 +      4/2,      0@e      4_u   v0..5  | <0> 1 2 3 4 5 | ... | 0 1 2 3 4 <5> |
+-       0 +     10/2 +      5/2,      0@e      5_u   v0..4  | <0> 1 2 3 4 5 | ... | 0 1 2 3 <4> 5 |
++       0 +     10/2 +      5/2,      0@e      5_u   v0..4  | <0> 1 2 3 4 | ... | 0 1 2 3 <4> |
+-       0 +     10/2 +      6/2,      0@e      6_u   v0..3  | <0> 1 2 3 4 | ... | 0 1 2 <3> 4 |
++       0 +     10/2 +      6/2,      0@e      6_u   v0..3  | <0> 1 2 3 | ... | 0 1 2 <3> |
+-       0 +     10/2 +      7/2,      0@e      7_u   v0..2  | <0> 1 2 3 | ... | 0 1 <2> 3 |
++       0 +     10/2 +      7/2,      0@e      7_u   v0..2  | <0> 1 2 | ... | 0 1 <2> |
+-       0 +     10/2 +      8/2,      0@e      8_u   v0..1  | <0> 1 2 | ... | 0 <1> 2 |
++       0 +     10/2 +      8/2,      0@e      8_u   v0..1  | <0> 1 | ... | 0 <1> |
+-       0 +     10/2 +      9/2,      0@e      9_u   v0..0  | <0> 1 | ... | <0> 1 |
++       0 +     10/2 +      9/2,      0@e      9_u   v0..0  | <0> | ... | <0> |
+D       0 +     10/2 +     10/2,      0@e     10_u   (list is empty)
+d       0 +     10/2 +     10/2,      0@e     10_u   (list is empty)
 e       0 + ? (rolling over)
 f      10 + ? (rolling over)
-g      10 +      0/2 +      0/2   (list is empty)
-a      10 +      0/2 +      0/2   (list is empty)
-b      10 +      0/2 +      0/2   (list is empty)
--      10 +      1/2 +      0/2   | <0> | ... | <0> |
-+      10 +      1/2 +      0/2   | <0> 1 | ... | <0> 1 |
--      10 +      2/2 +      0/2   | <0> 1 | ... | 0 <1> |
-+      10 +      2/2 +      0/2   | <0> 1 2 ... | 0 <1> 2 |
--      10 +      3/2 +      0/2   | <0> 1 2 ... 0 1 <2> |
-+      10 +      3/2 +      0/2   | <0> 1 2 ... 0 1 <2> 3 |
--      10 +      4/2 +      0/2   | <0> 1 2 ... 1 2 <3> |
-+      10 +      4/2 +      0/2   | <0> 1 2 ... 1 2 <3> 4 |
--      10 +      5/2 +      0/2   | <0> 1 2 ... 2 3 <4> |
-+      10 +      5/2 +      0/2   | <0> 1 2 ... 2 3 <4> 5 |
--      10 +      6/2 +      0/2   | <0> 1 2 ... 3 4 <5> |
-+      10 +      6/2 +      0/2   | <0> 1 2 ... 3 4 <5> 6 |
--      10 +      7/2 +      0/2   | <0> 1 2 ... 1 2 <3> 4 5 ... 4 5 <6> |
-+      10 +      7/2 +      0/2   | <0> 1 2 ... 1 2 <3> 4 5 ... 4 5 <6> 7 |
--      10 +      8/2 +      0/2   | <0> 1 2 ... 1 2 <3> 4 5 ... 5 6 <7> |
-+      10 +      8/2 +      0/2   | <0> 1 2 ... 1 2 <3> 4 5 ... 5 6 <7> 8 |
--      10 +      9/2 +      0/2   | <0> 1 2 ... 2 3 <4> 5 6 ... 6 7 <8> |
-+      10 +      9/2 +      0/2   | <0> 1 2 ... 2 3 <4> 5 6 ... 6 7 <8> 9 |
-c      10 +     10/2 +      0/2   | <0> 1 2 ... 2 3 <4> 5 6 ... 7 8 <9> |
--      10 +     10/2 +      1/2   | <0> 1 2 ... 2 3 <4> 5 6 ... 6 7 <8> 9 |
-+      10 +     10/2 +      1/2   | <0> 1 2 ... 2 3 <4> 5 6 ... 6 7 <8> |
--      10 +     10/2 +      2/2   | <0> 1 2 ... 1 2 <3> 4 5 ... 5 6 <7> 8 |
-+      10 +     10/2 +      2/2   | <0> 1 2 ... 1 2 <3> 4 5 ... 5 6 <7> |
--      10 +     10/2 +      3/2   | <0> 1 2 ... 1 2 <3> 4 5 ... 4 5 <6> 7 |
-+      10 +     10/2 +      3/2   | <0> 1 2 ... 1 2 <3> 4 5 ... 4 5 <6> |
--      10 +     10/2 +      4/2   | <0> 1 2 ... 3 4 <5> 6 |
-+      10 +     10/2 +      4/2   | <0> 1 2 ... 3 4 <5> |
--      10 +     10/2 +      5/2   | <0> 1 2 ... 2 3 <4> 5 |
-+      10 +     10/2 +      5/2   | <0> 1 2 ... 2 3 <4> |
--      10 +     10/2 +      6/2   | <0> 1 2 ... 1 2 <3> 4 |
-+      10 +     10/2 +      6/2   | <0> 1 2 ... 1 2 <3> |
--      10 +     10/2 +      7/2   | <0> 1 2 ... 0 1 <2> 3 |
-+      10 +     10/2 +      7/2   | <0> 1 2 ... 0 1 <2> |
--      10 +     10/2 +      8/2   | <0> 1 2 ... | 0 <1> 2 |
-+      10 +     10/2 +      8/2   | <0> 1 | ... | 0 <1> |
--      10 +     10/2 +      9/2   | <0> 1 | ... | <0> 1 |
-+      10 +     10/2 +      9/2   | <0> | ... | <0> |
-D      10 +     10/2 +     10/2   (list is empty)
-d      10 +     10/2 +     10/2   (list is empty)
+g      10 +      0/2 +      0/2,      0@e      0_u   (list is empty)
+a      10 +      0/2 +      0/2,      0@e      0_u   (list is empty)
+b      10 +      0/2 +      0/2,      0@e      0_u   (list is empty)
+-      10 +      1/2 +      0/2,      0@e      0_u   v0..0  | <0> | ... | <0> |
++      10 +      1/2 +      0/2,      0@e      0_u   v0..0  | <0> 1 | ... | <0> 1 |
+-      10 +      2/2 +      0/2,      0@e      0_u   v0..1  | <0> 1 | ... | 0 <1> |
++      10 +      2/2 +      0/2,      0@e      0_u   v0..1  | <0> 1 2 | ... | 0 <1> 2 |
+-      10 +      3/2 +      0/2,      0@e      0_u   v0..2  | <0> 1 2 | ... | 0 1 <2> |
++      10 +      3/2 +      0/2,      0@e      0_u   v0..2  | <0> 1 2 3 | ... | 0 1 <2> 3 |
+-      10 +      4/2 +      0/2,      0@e      0_u   v0..3  | <0> 1 2 3 | ... | 0 1 2 <3> |
++      10 +      4/2 +      0/2,      0@e      0_u   v0..3  | <0> 1 2 3 4 | ... | 0 1 2 <3> 4 |
+-      10 +      5/2 +      0/2,      0@e      0_u   v0..4  | <0> 1 2 3 4 | ... | 0 1 2 3 <4> |
++      10 +      5/2 +      0/2,      0@e      0_u   v0..4  | <0> 1 2 3 4 5 | ... | 0 1 2 3 <4> 5 |
+-      10 +      6/2 +      0/2,      0@e      0_u   v0..5  | <0> 1 2 3 4 5 | ... | 0 1 2 3 4 <5> |
++      10 +      6/2 +      0/2,      0@e      0_u   v0..5  | <0> 1 2 3 4 5 6 ... | 0 1 2 3 4 <5> 6 |
+-      10 +      7/2 +      0/2,      0@e      0_u   v0..6  | <0> 1 2 3 4 5 6 ... 0 1 2 3 4 5 <6> |
++      10 +      7/2 +      0/2,      0@e      0_u   v0..6  | <0> 1 2 3 4 5 6 ... 0 1 2 3 4 5 <6> 7 |
+-      10 +      8/2 +      0/2,      0@e      0_u   v0..7  | <0> 1 2 3 4 5 6 ... 1 2 3 4 5 6 <7> |
++      10 +      8/2 +      0/2,      0@e      0_u   v0..7  | <0> 1 2 3 4 5 6 ... 1 2 3 4 5 6 <7> 8 |
+-      10 +      9/2 +      0/2,      0@e      0_u   v0..8  | <0> 1 2 3 4 5 6 ... 2 3 4 5 6 7 <8> |
++      10 +      9/2 +      0/2,      0@e      0_u   v0..8  | <0> 1 2 3 4 5 6 ... 2 3 4 5 6 7 <8> 9 |
+c      10 +     10/2 +      0/2,      0@e      0_u   v0..9  | <0> 1 2 3 4 5 6 ... 3 4 5 6 7 8 <9> |
+-      10 +     10/2 +      1/2,      0@e      1_u   v0..8  | <0> 1 2 3 4 5 6 ... 2 3 4 5 6 7 <8> 9 |
++      10 +     10/2 +      1/2,      0@e      1_u   v0..8  | <0> 1 2 3 4 5 6 ... 2 3 4 5 6 7 <8> |
+-      10 +     10/2 +      2/2,      0@e      2_u   v0..7  | <0> 1 2 3 4 5 6 ... 1 2 3 4 5 6 <7> 8 |
++      10 +     10/2 +      2/2,      0@e      2_u   v0..7  | <0> 1 2 3 4 5 6 ... 1 2 3 4 5 6 <7> |
+-      10 +     10/2 +      3/2,      0@e      3_u   v0..6  | <0> 1 2 3 4 5 6 ... 0 1 2 3 4 5 <6> 7 |
++      10 +     10/2 +      3/2,      0@e      3_u   v0..6  | <0> 1 2 3 4 5 6 ... 0 1 2 3 4 5 <6> |
+-      10 +     10/2 +      4/2,      0@e      4_u   v0..5  | <0> 1 2 3 4 5 6 ... | 0 1 2 3 4 <5> 6 |
++      10 +     10/2 +      4/2,      0@e      4_u   v0..5  | <0> 1 2 3 4 5 | ... | 0 1 2 3 4 <5> |
+-      10 +     10/2 +      5/2,      0@e      5_u   v0..4  | <0> 1 2 3 4 5 | ... | 0 1 2 3 <4> 5 |
++      10 +     10/2 +      5/2,      0@e      5_u   v0..4  | <0> 1 2 3 4 | ... | 0 1 2 3 <4> |
+-      10 +     10/2 +      6/2,      0@e      6_u   v0..3  | <0> 1 2 3 4 | ... | 0 1 2 <3> 4 |
++      10 +     10/2 +      6/2,      0@e      6_u   v0..3  | <0> 1 2 3 | ... | 0 1 2 <3> |
+-      10 +     10/2 +      7/2,      0@e      7_u   v0..2  | <0> 1 2 3 | ... | 0 1 <2> 3 |
++      10 +     10/2 +      7/2,      0@e      7_u   v0..2  | <0> 1 2 | ... | 0 1 <2> |
+-      10 +     10/2 +      8/2,      0@e      8_u   v0..1  | <0> 1 2 | ... | 0 <1> 2 |
++      10 +     10/2 +      8/2,      0@e      8_u   v0..1  | <0> 1 | ... | 0 <1> |
+-      10 +     10/2 +      9/2,      0@e      9_u   v0..0  | <0> 1 | ... | <0> 1 |
++      10 +     10/2 +      9/2,      0@e      9_u   v0..0  | <0> | ... | <0> |
+D      10 +     10/2 +     10/2,      0@e     10_u   (list is empty)
+d      10 +     10/2 +     10/2,      0@e     10_u   (list is empty)
 e      10 + ? (rolling over)
 f      20 + ? (rolling over)
-g      20 +      0/2 +      0/2   (list is empty)
+g      20 +      0/2 +      0/2,      0@e      0_u   (list is empty)
 
Index: doc/theses/mike_brooks_MMath/benchmarks/list/fx-cfa-GENERAL.h
===================================================================
--- doc/theses/mike_brooks_MMath/benchmarks/list/fx-cfa-GENERAL.h	(revision 39ffa5e134a180ed0450785d9712d55c8f10036a)
+++ doc/theses/mike_brooks_MMath/benchmarks/list/fx-cfa-GENERAL.h	(revision 81e1984bc450631534fe266ecbbd83ed5d17c16c)
@@ -34,6 +34,6 @@
 #define BFX_INIT(S, lst)
 
-#define BFX_GET_AFTER(S, lst, iter)              ( & prev( * (iter) ) )
-#define BFX_GET_BEFORE(S, lst, iter)             ( & next( * (iter) ) )
+#define BFX_GET_AFTER(S, lst, iter)              ( & next( * (iter) ) )
+#define BFX_GET_BEFORE(S, lst, iter)             ( & prev( * (iter) ) )
 #define BFX_IS_VALID_POS(S, lst, iter)           ((iter)!=NULL)
 #define BFX_DEREF_POS(S, lst, iter)              (iter)
