Index: cpp/tests/evol_test-f4.goal
===================================================================
--- cpp/tests/evol_test-f4.goal	(revision 1301)
+++ cpp/tests/evol_test-f4.goal	(revision 1320)
@@ -1,22 +1,22 @@
 Evaluation 0	4,4.1,5	2,2,2	1,1,1	0,0,0	0,0,0	1,1.1,2
-Evaluation 10	4,5,6	2,2,2	1,1,1	0,0,0	0,0,0	1,2,3
-Evaluation 20	4,5.1,6	2,2,2	1,1,1	0,0,0	0,0,0	1,2.1,3
-Evaluation 30	5,7.2,11	2,2.3,3	1,1.3,2	0,0,0	0,0,0	2,3.6,6
-Evaluation 40	6,8.9,13	2,2.4,3	1,1.4,2	0,0,0	0,0,0	3,5.1,8
-Evaluation 50	6,12.2,19	2,2.9,4	1,1.9,3	0,0.1,1	0,0,0	3,7.3,13
-Evaluation 60	12,17.8,25	2,3.6,4	1,2.6,3	0,0.4,1	0,0,0	7,11.2,17
-Evaluation 70	12,22.6,30	2,4.1,5	1,3.1,4	0,0.6,1	0,0,0	8,14.8,20
-Evaluation 80	17,26,32	4,4.8,6	3,3.8,5	0,0.3,1	0,0,0	10,17.1,21
-Evaluation 90	5,26.4,35	2,5,6	1,4,5	0,0.1,1	0,0,0	2,17.3,24
-Evaluation 99	17,30,36	4,5.5,6	3,4.5,5	0,0,0	0,0,0	10,20,25
-35.0	/*4*/<l<XC#2>>X>l<X>l<Xrm>XC>
-17.0	/*4*/<<Xrm>X>X>
-36.0	/*4*/<l<QXC#2>>X>l<l<Xrm>XC>X>
-27.0	/*4*/<l<Xrml>X>l<Xrm>X>
-35.0	/*4*/<l<XC#2>>X>l<l<Xrm>XC>X>
-33.0	/*4*/<l<Xrml><X>X>l<Xrm>lX>
-32.0	/*4*/<l<XC>X>l<l<Xrm>XC>X>
-32.0	/*4*/<l<Xrml><X>X>l<Xrm>X>
-27.0	/*4*/<l<X>Xrml>l<Xrm>X>
-26.0	/*4*/<<Xrm>X>ll<X>Xrm>
+Evaluation 10	4,5,7	2,2,2	1,1,1	0,0,0	0,0,0	1,2,4
+Evaluation 20	4,8.2,16	2,2.1,3	1,1.1,2	0,0.2,1	0,0,0	1,4.8,12
+Evaluation 30	4,14.9,23	2,2.3,3	1,1.3,2	0,0.7,1	0,0,0	1,10.6,17
+Evaluation 40	13,21.8,30	2,2.5,4	1,1.5,3	1,1.3,2	0,0,0	9,16.5,22
+Evaluation 50	16,23.8,31	2,2.8,4	1,1.8,3	1,1.1,2	0,0,0	12,18.1,23
+Evaluation 60	17,25.7,38	2,2.9,4	1,1.9,3	1,1.2,2	0,0,0	13,19.7,31
+Evaluation 70	24,36.3,44	3,3.2,4	2,2.2,3	1,1.7,2	0,0.2,1	18,29,36
+Evaluation 80	32,39.4,49	2,3.3,5	1,2.3,4	1,1.9,2	0,0.2,1	24,31.7,38
+Evaluation 90	39,51.4,61	3,4.2,5	2,3.2,4	2,2.5,3	0,0.2,1	32,41.3,49
+Evaluation 99	39,54.1,65	3,4.2,5	2,3.2,4	2,2.8,4	0,0.2,1	32,43.7,52
+41.0	/*4*/m<,Q<X><N:|[-1:2.346]>bX>N:S:+!:>
+55.0	/*4*/m<<<X#3>>mmQ<,<N:Gpart>mX>N:S:+!:>bX>N:S:+!:>
+65.0	/*4*/<<GX><<X>mmQ<,<N:G><N:Gpart>mLX>N:S:+!:>bXL>N:S:+!:>
+55.0	/*4*/m<<<X#4>>mmQ<,<N:Gpart>mX>N:S:+!:>bX>N:S:+!:>
+61.0	/*4*/<<GX><,<mmQ<,<N:Gpart>mX>N:S:+!:>X#3>>GX>N:S:+!:>
+47.0	/*4*/<m<,Q<X><N:|[-1:2.346]>bX>N:S:+!:>bX>
+39.0	/*4*/<,<X#3>>mmQ<,mX>N:S:+!:>N:S:+!:>
+61.0	/*4*/<<GX><,<X#3>>mmQ<,<N:Gpart>mX>N:S:+!:>GX>N:S:+!:>
+55.0	/*4*/<<,<X#3>>mmQ<,<N:Gpart>mX>N:S:+!:>GX>N:S:+!:>
+62.0	/*4*/<<GX><<X#3>>mmQ<,<N:Gpart>mLX>N:S:+!:>bXL>N:S:+!:>
 
Index: cpp/tests/evol_test-f9.goal
===================================================================
--- cpp/tests/evol_test-f9.goal	(revision 1301)
+++ cpp/tests/evol_test-f9.goal	(revision 1320)
@@ -1,22 +1,22 @@
 Evaluation 0	4,4,4	2,2,2	1,1,1	0,0,0	0,0,0	1,1,1
-Evaluation 10	4,6.8,13	2,2.9,5	1,1.9,4	0,0,0	0,0,0	1,2,4
-Evaluation 20	4,7.5,13	2,3.1,5	1,2.1,4	0,0,0	0,0,0	1,2.3,4
-Evaluation 30	5,10.5,13	2,4.1,5	1,3.1,4	0,0,0	0,0,0	2,3.3,4
-Evaluation 40	7,12.8,22	3,4.9,8	2,3.9,7	0,0,0	0,0,0	2,4,7
-Evaluation 50	10,19.8,34	4,7.2,12	3,6.2,11	0,0,0	0,0,0	3,6.4,11
-Evaluation 60	13,25,38	5,8.8,13	4,7.8,12	0,0,0	0,0,0	4,8.4,13
-Evaluation 70	22,32.4,41	8,11.3,14	7,10.3,13	0,0,0	0,0,0	7,10.8,14
-Evaluation 80	22,30.7,40	8,10.7,14	7,9.7,13	0,0,0	0,0,0	7,10.3,13
-Evaluation 90	22,36.9,49	8,12.9,17	7,11.9,16	0,0,0	0,0,0	7,12.1,16
-Evaluation 99	7,41.2,85	3,14.4,29	2,13.4,28	0,0,0	0,0,0	2,13.4,28
-85.0	/*9*/UURUUUUUFLULBURUUUUUUUUUULUB
-43.0	/*9*/UURUUUUUFLULBB
-31.0	/*9*/UUUUFLULBB
-40.0	/*9*/UURUUUUUUULUB
-37.0	/*9*/UURBUUUUUUBB
-40.0	/*9*/UUUUUUUUUULUB
-49.0	/*9*/UURUUUUUUUUUULUB
-43.0	/*9*/UURBUUUUFLULBB
-37.0	/*9*/UUUUUUUUUUUB
-7.0	/*9*/UB
+Evaluation 10	4,6.5,13	2,2.8,5	1,1.8,4	0,0,0	0,0,0	1,1.9,4
+Evaluation 20	5,9.3,14	2,3.6,5	1,2.6,4	0,0,0	0,0,0	2,3.1,5
+Evaluation 30	5,10.6,16	2,4,6	1,3,5	0,0,0	0,0,0	2,3.6,5
+Evaluation 40	5,11.4,22	2,4.3,8	1,3.3,7	0,0,0	0,0,0	2,3.8,7
+Evaluation 50	5,18.7,36	2,6.6,12	1,5.6,11	0,0,0	0,0,0	2,6.5,13
+Evaluation 60	7,24.2,36	3,8.2,12	2,7.2,11	0,0,0	0,0,0	2,8.8,13
+Evaluation 70	7,32.6,51	3,11.1,17	2,10.1,16	0,0,0	0,0,0	2,11.4,18
+Evaluation 80	23,38.3,58	8,12.8,19	7,11.8,18	0,0,0	0,0,0	8,13.7,21
+Evaluation 90	31,40.7,48	10,13.1,16	9,12.2,15	0,0,0	0,0,0	12,15.4,17
+Evaluation 99	31,50.1,71	10,16,23	9,15.1,22	0,0,0	0,0,0	12,19,26
+71.0	/*9*/DBBDBFDBBBDBFDBLUBDBFBDBBD
+44.0	/*9*/DUBDBFDBBFBDBDBBD
+69.0	/*9*/DBBDBFDBBBDBFDBLUBDBFBDFBD
+41.0	/*9*/DBBDBFDBBFBDBBFD
+41.0	/*9*/DUBDBFDBUFBDBDBBD
+48.0	/*9*/DBBDBFDBFFBDBFBDBBD
+37.0	/*9*/BDDBLBDBDBBD
+67.0	/*9*/DBBDBFDBBFBDBBFDBBFBDDDBBD
+31.0	/*9*/BDFBFBDBDBBD
+52.0	/*9*/DBBDBFDBLUBDBFBDBBD
 
Index: cpp/tests/evol_test-fB.goal
===================================================================
--- cpp/tests/evol_test-fB.goal	(revision 1301)
+++ cpp/tests/evol_test-fB.goal	(revision 1320)
@@ -1,42 +1,42 @@
 Evaluation 0	12,12,12	3,3,3	2,2,2	0,0,0	0,0,0	7,7,7
-Evaluation 10	9,14.9,23	2,2.8,4	1,1.8,3	0,0,0	0,0,0	6,10.3,20
-Evaluation 20	9,20.4,37	2,2.7,4	1,1.7,3	0,0,0	0,0,0	6,16,32
-Evaluation 30	12,20,26	2,2.6,4	1,1.6,3	0,0,0	0,0,0	7,15.8,23
-Evaluation 40	12,23.9,39	2,2.3,4	1,1.3,3	0,0,0	0,0,0	9,20.3,34
-Evaluation 50	12,31.8,43	2,2.7,4	1,1.7,3	0,0,0	0,0,0	9,27.4,36
-Evaluation 60	12,29.5,43	2,2.6,4	1,1.6,3	0,0,0	0,0,0	9,25.3,36
-Evaluation 70	23,38.2,44	2,3.1,4	1,2.1,3	0,0,0	0,0,0	20,33,37
-Evaluation 80	39,43.6,50	2,3.8,6	1,2.8,5	0,0,0	0,0,0	36,37,39
-Evaluation 90	41,45.2,51	3,4.1,6	2,3.1,5	0,0.1,1	0,0.1,1	36,37.8,40
-Evaluation 99	41,45.5,51	3,4,5	2,3,4	0,0.2,1	0,0.2,1	36,38.1,42
-44.0	//B
-3
-aaaba"N:s=-0.213"aaa"T:rz=-0.939"zz
-47.0	//B
-3
-aaaa"N:s=-0.213"aaa"T:rz=-0.939"zbkz
-45.0	//B
-3
-aaakba"N:s=-0.213"aaa"T:rz=-0.939"zz
+Evaluation 10	12,14,22	2,2.8,3	1,1.8,2	0,0,0	0,0,0	7,9.4,19
+Evaluation 20	9,13.6,22	2,2.6,3	1,1.6,2	0,0,0	0,0,0	6,9.4,19
+Evaluation 30	9,12,13	2,2.9,3	1,1.9,2	0,0,0	0,0,0	6,7.2,8
+Evaluation 40	9,12.8,24	2,2.6,3	1,1.6,2	0,0.2,1	0,0,0	6,8.4,19
+Evaluation 50	10,20.5,25	2,3,4	1,2,3	0,0,0	0,0,0	7,15.5,21
+Evaluation 60	10,23.4,37	2,3.4,5	1,2.4,4	0,0.1,1	0,0,0	7,17.5,27
+Evaluation 70	10,36.4,50	2,4.9,6	1,3.9,5	0,0.1,1	0,0,0	7,27.5,39
+Evaluation 80	10,36.9,61	2,4,6	1,3,5	0,0.5,2	0,0,0	7,29.4,50
+Evaluation 90	10,41.7,62	2,4.3,7	1,3.3,6	0,0.5,1	0,0,0	7,33.6,51
+Evaluation 99	33,50.6,66	3,5.5,10	2,4.5,9	0,0.7,2	0,0,0	27,39.9,57
 41.0	//B
 3
-aaba"N:s=-0.213"aaa"T:rz=-0.939"zz
+aafaanabaa"*"aaz"T:r=0.936"aa
+61.0	//B
+3
+aa"T:r=0.936"azn"N:in=0.727, fo=0.263"aaa"*"apaa
+61.0	//B
+3
+aa"T:r=0.962"aaaaz"T:r=0.936"nakbaa"*"aa
 51.0	//B
 3
-aaa"G"aaba"N:s=-0.213"aaa"T:rz=-0.939"zz
-49.0	//B
+aaazn"N:in=0.727, fo=0.263"aaa"*"aaa
+66.0	//B
 3
-aabaaaka"N:s=-0.213"aaa"T:rz=-0.939"zz
-45.0	//B
+aa"Gpart:rz=1.136"a"|:r=0.937"az"T:r=0.936"abaa"*"aanaa
+34.0	//B
 3
-aaa"T:rz=-0.939"zbk"N:s=-0.213"aaaaz
-41.0	//B
+aanabaa"*"aaz"T:r=0.936"aa
+51.0	//B
 3
-aaaba"N:s=-0.213"aa"T:rz=-0.939"zz
-47.0	//B
+aaazn"N:in=0.727, fo=0.263"aaa"*"aaa
+54.0	//B
 3
-aaaa"N:s=-0.213"aaa"T:rz=-0.939"zbkz
-45.0	//B
+aa"T:r=0.962"aanakbaa"*"aaz"T:r=0.936"aa
+54.0	//B
 3
-aaaba"N:s=-0.213"daaa"T:rz=-0.939"zz
+aa"Gpart:rz=1.136"aanabaa"*"aaz"T:r=0.936"aa
+33.0	//B
+3
+aanaba"*"aaz"T:r=0.936"aa
 
Index: cpp/tests/evol_test-fH.goal
===================================================================
--- cpp/tests/evol_test-fH.goal	(revision 1301)
+++ cpp/tests/evol_test-fH.goal	(revision 1320)
@@ -1,148 +1,79 @@
-Evaluation 0	7,7.6,13	2,2.1,3	1,1.1,2	0,0,0	0,0,0	4,4.4,8
-Evaluation 10	7,95.7,300	2,2.6,4	1,1.6,3	0,0.3,1	0,0,0	4,91.2,292
-Evaluation 20	7,213.5,441	2,3.2,4	1,2.2,3	0,0.5,1	0,0,0	4,207.6,433
-Evaluation 30	154,500.3,868	3,4.5,5	2,3.5,4	0,1.1,2	0,0,0	147,491.2,857
-Evaluation 40	421,597.5,868	4,4.8,6	3,3.8,5	0,1.2,2	0,0,0	412,587.7,857
-Evaluation 50	421,768.7,1432	4,5.6,9	3,4.6,8	0,1.5,3	0,0,0	412,757,1413
-Evaluation 60	453,958.1,1444	3,6.7,10	2,5.7,9	1,1.8,3	0,0,0	445,943.9,1424
-Evaluation 70	453,1125.2,1582	4,7.6,9	3,6.6,8	1,2,3	0,0,0	445,1109,1562
-Evaluation 80	878,1350,1590	7,8.2,10	6,7.2,9	2,2.6,3	0,0,0	863,1332,1570
-Evaluation 90	595,1179.2,1736	6,7.7,10	5,6.7,9	1,2.3,4	0,0,0	583,1162.5,1713
-Evaluation 99	1015,1336.6,1736	7,8.4,10	6,7.4,9	2,2.9,4	0,0,0	998,1317.9,1713
-1735.0	//H
+Evaluation 0	7,7.1,8	2,2,2	1,1,1	0,0,0	0,0,0	4,4.1,5
+Evaluation 10	7,88.1,195	2,2.2,3	1,1.2,2	0,0.3,1	0,0,0	4,84.4,189
+Evaluation 20	16,165.5,336	2,2.8,4	1,1.8,3	0,0.2,1	0,0,0	13,160.7,328
+Evaluation 30	35,198.1,467	2,2.7,4	1,1.7,3	0,0.2,1	0,0,0	32,193.5,459
+Evaluation 40	35,180.4,293	2,2.6,4	1,1.6,3	0,0.1,1	0,0,0	32,176.1,289
+Evaluation 50	153,344.4,722	2,3.1,4	1,2.1,3	0,0.5,2	0,0,0	150,338.7,713
+Evaluation 60	152,492.2,1713	2,3.2,7	1,2.2,6	0,1,4	0,0.2,2	149,485.6,1694
+Evaluation 70	153,358,722	2,2.7,4	1,1.7,3	0,0.8,2	0,0,0	150,352.8,713
+Evaluation 80	278,506.4,1397	2,2.9,5	1,1.9,4	0,1.7,6	0,0,0	273,499.9,1382
+Evaluation 90	276,435.3,568	2,2.7,3	1,1.7,2	0,1.4,2	0,0,0	272,429.5,561
+Evaluation 99	278,526.3,998	3,3.5,6	2,2.5,5	0,1.2,2	0,0,0	273,519.1,985
+425.0	//H
 3
-j:-0.06737845437601209, -0.511148823890835, -0.6820608270354569, -0.050604989752173424, 0.24702021200209856, -0.3239847649820149, fr=0.919, l=1.363
-j:0.7835460035130382, 0.9273255281150341, -0.23311695735901594, -0.8865740485489368, -0.45468741096556187, -0.0446697766892612, l=1.272
-j:-0.06737845437601209, -0.511148823890835, -0.6820608270354569, -0.050604989752173424, 0.24702021200209856, -0.3239847649820149, fr=0.919, l=1.232
-j:0.7835460035130382, 0.9273255281150341, -0.23311695735901594, -0.8865740485489368, -0.45468741096556187, -0.0446697766892612, l=1.272
-j:-0.06737845437601209, -0.511148823890835, -0.6820608270354569, -0.050604989752173424, 0.24702021200209856, -0.3239847649820149, fr=0.919, l=1.232
-j:
-j:0.7835460035130382, 0.9273255281150341, -0.23311695735901594, -0.8865740485489368, -0.45468741096556187, -0.0446697766892612, l=1.272
-j:-0.06737845437601209, -0.511148823890835, -0.6820608270354569, -0.050604989752173424, 0.24702021200209856, -0.3239847649820149, fr=0.919, l=1.232
-j:0.7835460035130382, 0.9273255281150341, -0.23311695735901594, -0.8865740485489368, -0.45468741096556187, -0.0446697766892612, l=1.272
-n:0.1043849429115653, 0.16895214468240738, 0.9238727670162916, 0.4633875167928636, -0.9087707279250026, -0.5816859439946711, d=Gpart:ry=-1.415
-n:0.1043849429115653, 0.16895214468240738, 0.9238727670162916, 0.4633875167928636, -0.9087707279250026, -0.5816859439946711, d=Gpart:ry=-1.415
-n:0.1043849429115653, 0.16895214468240738, 0.9238727670162916, 0.4633875167928636, -0.9087707279250026, -0.5816859439946711, d=Gpart:ry=-1.415
-n:0.1043849429115653, 0.16895214468240738, 0.9238727670162916, 0.4633875167928636, -0.9087707279250026, -0.5816859439946711, d=Gpart:ry=-1.51
+j:-0.038212927524000406, 0.37732237251475453, 0.7609517863020301, -0.7625445714220405, -0.3640336534008384, -0.1714740232564509, l=1.359
+j:-0.038212927524000406, 0.37732237251475453, 0.7609517863020301, -0.7625445714220405, -0.3640336534008384, -0.1714740232564509, l=1.359
+n:-0.4936176179908216, -0.7378895306028426, -0.9759275536052883, 0.5421781041659415, -0.24754683719947934, -0.017950518522411585, d=N:s=-0.244
 
-1278.0	//H
+563.0	//H
 3
-j:0.7835460035130382, 0.9273255281150341, -0.23311695735901594, -0.8865740485489368, -0.45468741096556187, -0.0446697766892612, l=1.272
-j:0.7835460035130382, 0.9273255281150341, -0.23311695735901594, -0.8865740485489368, -0.45468741096556187, -0.0446697766892612, l=1.364
-j:-0.06737845437601209, -0.511148823890835, -0.6820608270354569, -0.050604989752173424, 0.24702021200209856, -0.3239847649820149, fr=0.919, l=1.232
-j:0.7835460035130382, 0.9273255281150341, -0.23311695735901594, -0.8865740485489368, -0.45468741096556187, -0.0446697766892612, l=1.272
-j:
-j:0.2289294134825468, -0.9338508220389485, -0.9687878657132387, 0.6790259419940412, 0.04474106524139643, 0.026149732992053032, rotstif=0.98
-n:0.1043849429115653, 0.16895214468240738, 0.9238727670162916, 0.4633875167928636, -0.9087707279250026, -0.5816859439946711, d=Gpart:ry=-1.415
-n:0.1043849429115653, 0.16895214468240738, 0.9238727670162916, 0.4633875167928636, -0.9087707279250026, -0.5816859439946711, d=Gpart:ry=-1.415
-n:0.1043849429115653, 0.16895214468240738, 0.9238727670162916, 0.4633875167928636, -0.9087707279250026, -0.5816859439946711, d=Gpart:ry=-1.415
-c:0.23696052748709917, 0.948512434028089, 0.9806900122202933, -0.5106971822679043, -0.25135360984131694, -0.9086807160638273, 0.005
+j:-0.038212927524000406, 0.37732237251475453, 0.7609517863020301, -0.7625445714220405, -0.3640336534008384, -0.1714740232564509, l=1.216
+j:0.7719245310872793, -0.29625887237489223, 0.4767806753516197, 0.6783782416023314, -0.524516352917999, 0.004778912756592035, rotstif=0.889
+j:-0.038212927524000406, 0.37732237251475453, 0.7609517863020301, -0.7625445714220405, -0.3640336534008384, -0.1714740232564509, l=1.359
+n:-0.30929664289578795, 0.8561625853180885, 0.4088287986814976, 0.8882395019754767, 0.21650573518127203, 0.19331082561984658, d=N:s=-0.105
 
-1146.0	//H
+582.0	//H
 3
-j:0.7835460035130382, 0.9273255281150341, -0.23311695735901594, -0.8865740485489368, -0.45468741096556187, -0.0446697766892612, l=1.272
-j:0.7835460035130382, 0.9273255281150341, -0.23311695735901594, -0.8865740485489368, -0.45468741096556187, -0.0446697766892612, l=1.272
-j:-0.06737845437601209, -0.511148823890835, -0.6820608270354569, -0.050604989752173424, 0.24702021200209856, -0.3239847649820149, fr=0.919, l=1.232
-j:0.7835460035130382, 0.9273255281150341, -0.23311695735901594, -0.8865740485489368, -0.45468741096556187, -0.0446697766892612, l=1.272
-j:
-j:0.2289294134825468, -0.9338508220389485, -0.9687878657132387, 0.6790259419940412, 0.04474106524139643, 0.026149732992053032, rotstif=0.98
-n:0.1043849429115653, 0.16895214468240738, 0.9238727670162916, 0.4633875167928636, -0.9087707279250026, -0.5816859439946711, d=Gpart:ry=-1.415
-n:0.1043849429115653, 0.16895214468240738, 0.9238727670162916, 0.4633875167928636, -0.9087707279250026, -0.5816859439946711, d=Gpart:ry=-1.415
-n:0.1043849429115653, 0.16895214468240738, 0.9238727670162916, 0.4633875167928636, -0.9087707279250026, -0.5816859439946711, d=Gpart:ry=-1.415
+j:0.2685481063090265, 0.9178985385224223, 0.30558063788339496, 0.9767476636916399, -0.7959103863686323, -0.5822464828379452, rotstif=0.793, l=1.03
+j:0.7719245310872793, -0.29625887237489223, 0.4767806753516197, 0.6783782416023314, -0.524516352917999, 0.004778912756592035, rotstif=0.889
+n:-0.4936176179908216, -0.7378895306028426, -0.9759275536052883, 0.5421781041659415, -0.24754683719947934, -0.017950518522411585, d=N:s=-0.244
+n:-0.4936176179908216, -0.7378895306028426, -0.9759275536052883, 0.5421781041659415, -0.24754683719947934, -0.017950518522411585, d=N:s=-0.244
 
-1448.0	//H
+425.0	//H
 3
-j:-0.06737845437601209, -0.511148823890835, -0.6820608270354569, -0.050604989752173424, 0.24702021200209856, -0.3239847649820149, fr=0.919, l=1.232
-j:
-j:0.3556330786086619, -0.459984062705189, 0.47038804087787867, 0.13923680875450373, 0.40747456159442663, -0.4230471351183951, l=0.966
-j:-0.7859917231835425, 0.17938943253830075, 0.49079614458605647, 0.16680837189778686, 0.8729361924342811, 0.8815633179619908, fr=0.267, l=1.217
-j:-0.06737845437601209, -0.511148823890835, -0.6820608270354569, -0.050604989752173424, 0.24702021200209856, -0.3239847649820149, fr=0.919, l=1.363
-j:0.7835460035130382, 0.9273255281150341, -0.23311695735901594, -0.8865740485489368, -0.45468741096556187, -0.0446697766892612, l=1.272
-j:0.7835460035130382, 0.9273255281150341, -0.23311695735901594, -0.8865740485489368, -0.45468741096556187, -0.0446697766892612, l=1.272
-j:-0.06737845437601209, -0.511148823890835, -0.6820608270354569, -0.050604989752173424, 0.24702021200209856, -0.3239847649820149, fr=0.919, l=1.232
-n:0.1043849429115653, 0.16895214468240738, 0.9238727670162916, 0.4633875167928636, -0.9087707279250026, -0.5816859439946711, d=Gpart:ry=-1.415
-n:0.1043849429115653, 0.16895214468240738, 0.9238727670162916, 0.4633875167928636, -0.9087707279250026, -0.5816859439946711, d=Gpart:ry=-1.415
-n:0.1043849429115653, 0.16895214468240738, 0.9238727670162916, 0.4633875167928636, -0.9087707279250026, -0.5816859439946711, d=Gpart:ry=-1.415
+j:-0.038212927524000406, 0.37732237251475453, 0.7609517863020301, -0.7625445714220405, -0.3640336534008384, -0.1714740232564509, l=1.311
+j:-0.038212927524000406, 0.37732237251475453, 0.7609517863020301, -0.7625445714220405, -0.3640336534008384, -0.1714740232564509, l=1.359
+n:-0.4936176179908216, -0.7378895306028426, -0.9759275536052883, 0.5421781041659415, -0.24754683719947934, -0.017950518522411585, d=N:s=-0.244
 
-1278.0	//H
+278.0	//H
 3
-j:0.7835460035130382, 0.9273255281150341, -0.23311695735901594, -0.8865740485489368, -0.45468741096556187, -0.0446697766892612, l=1.272
-j:0.7835460035130382, 0.9273255281150341, -0.23311695735901594, -0.8865740485489368, -0.45468741096556187, -0.0446697766892612, l=1.272
-j:-0.06737845437601209, -0.511148823890835, -0.6820608270354569, -0.050604989752173424, 0.24702021200209856, -0.3239847649820149, fr=0.919, l=1.232
-j:0.7835460035130382, 0.9273255281150341, -0.23311695735901594, -0.8865740485489368, -0.45468741096556187, -0.0446697766892612, l=1.272
-j:
-j:0.2289294134825468, -0.9338508220389485, -0.9687878657132387, 0.6790259419940412, 0.04474106524139643, 0.026149732992053032, rotstif=0.98
-n:0.1043849429115653, 0.16895214468240738, 0.9238727670162916, 0.4633875167928636, -0.9087707279250026, -0.5816859439946711, d=Gpart:ry=-1.415
-n:0.1043849429115653, 0.16895214468240738, 0.9238727670162916, 0.4633875167928636, -0.9087707279250026, -0.5816859439946711, d=Gpart:ry=-1.415
-n:0.1043849429115653, 0.16895214468240738, 0.9238727670162916, 0.4633875167928636, -0.9087707279250026, -0.5816859439946711, d=Gpart:ry=-1.415
-c:0.23696052748709917, 0.948512434028089, 0.9806900122202933, -0.5106971822679043, -0.25135360984131694, -0.9086807160638273, 0.005
+j:0.2685481063090265, 0.9178985385224223, 0.30558063788339496, 0.9767476636916399, -0.7959103863686323, -0.5822464828379452, rotstif=0.793, l=1.03
+j:-0.038212927524000406, 0.37732237251475453, 0.7609517863020301, -0.7625445714220405, -0.405, -0.1714740232564509, l=1.359
 
-1438.0	//H
+563.0	//H
 3
-j:-0.06737845437601209, -0.511148823890835, -0.6820608270354569, -0.050604989752173424, 0.24702021200209856, -0.3239847649820149, fr=0.919, l=1.232
-j:
-j:0.3556330786086619, -0.459984062705189, 0.47038804087787867, 0.13923680875450373, 0.40747456159442663, -0.4230471351183951, l=0.966
-j:-0.7859917231835425, 0.17938943253830075, 0.49079614458605647, 0.16680837189778686, 0.8729361924342811, 0.8815633179619908, l=1.217
-j:-0.06737845437601209, -0.511148823890835, -0.6820608270354569, -0.050604989752173424, 0.24702021200209856, -0.3239847649820149, fr=0.919, l=1.363
-j:0.7835460035130382, 0.9273255281150341, -0.23311695735901594, -0.8865740485489368, -0.45468741096556187, -0.0446697766892612, l=1.272
-j:0.7835460035130382, 0.9273255281150341, -0.23311695735901594, -0.8865740485489368, -0.45468741096556187, -0.0446697766892612, l=1.272
-j:-0.06737845437601209, -0.511148823890835, -0.6820608270354569, -0.050604989752173424, 0.24702021200209856, -0.3239847649820149, fr=0.919, l=1.232
-n:0.1043849429115653, 0.16895214468240738, 0.9238727670162916, 0.4633875167928636, -0.9087707279250026, -0.5816859439946711, d=Gpart:ry=-1.415
-n:0.1043849429115653, 0.16895214468240738, 0.9238727670162916, 0.4633875167928636, -0.9087707279250026, -0.5816859439946711, d=Gpart:ry=-1.415
-n:0.1043849429115653, 0.16895214468240738, 0.9238727670162916, 0.4633875167928636, -0.9087707279250026, -0.5816859439946711, d=Gpart:ry=-1.415
+j:-0.038212927524000406, 0.37732237251475453, 0.7609517863020301, -0.7625445714220405, -0.3640336534008384, -0.1714740232564509, l=1.359
+j:0.7719245310872793, -0.29625887237489223, 0.4767806753516197, 0.6783782416023314, -0.524516352917999, 0.004778912756592035, rotstif=0.889
+j:-0.038212927524000406, 0.37732237251475453, 0.7609517863020301, -0.7625445714220405, -0.3640336534008384, -0.1714740232564509, l=1.359
+n:-0.30929664289578795, 0.8561625853180885, 0.4088287986814976, 0.8882395019754767, 0.21650573518127203, 0.19331082561984658, d=N:s=-0.105
 
-1015.0	//H
+998.0	//H
 3
-j:
-j:-0.06737845437601209, -0.511148823890835, -0.6820608270354569, -0.050604989752173424, 0.24702021200209856, -0.3239847649820149, fr=0.919, l=1.232
-j:
-j:0.7835460035130382, 0.9273255281150341, -0.23311695735901594, -0.8865740485489368, -0.45468741096556187, -0.0446697766892612, l=1.272
-j:0.7835460035130382, 0.9273255281150341, -0.23311695735901594, -0.8865740485489368, -0.45468741096556187, -0.0446697766892612, l=1.272
-j:0.7835460035130382, 0.9273255281150341, -0.23311695735901594, -0.8865740485489368, -0.45468741096556187, -0.0446697766892612, l=1.272
-j:-0.06737845437601209, -0.511148823890835, -0.6820608270354569, -0.050604989752173424, 0.24702021200209856, -0.3239847649820149, fr=0.919, l=1.232
-n:0.1043849429115653, 0.16895214468240738, 0.9238727670162916, 0.4633875167928636, -0.9087707279250026, -0.5816859439946711, d=Gpart:ry=-1.415
-n:0.1043849429115653, 0.16895214468240738, 0.9238727670162916, 0.4633875167928636, -0.9087707279250026, -0.5816859439946711, d=Gpart:ry=-1.415
+j:0.2685481063090265, 0.9178985385224223, 0.30558063788339496, 0.9767476636916399, -0.7959103863686323, -0.5822464828379452, rotstif=0.793, l=1.03
+j:0.7719245310872793, -0.29625887237489223, 0.4767806753516197, 0.6783782416023314, -0.524516352917999, 0.004778912756592035, rotstif=0.889
+j:-0.038212927524000406, 0.37732237251475453, 0.7609517863020301, -0.7625445714220405, -0.3640336534008384, -0.1714740232564509, l=1.359
+j:0.7719245310872793, -0.29625887237489223, 0.4767806753516197, 0.6783782416023314, -0.524516352917999, 0.004778912756592035, rotstif=0.889
+j:-0.038212927524000406, 0.37732237251475453, 0.7609517863020301, -0.7625445714220405, -0.3640336534008384, -0.1714740232564509, l=1.359
+n:-0.4936176179908216, -0.7378895306028426, -0.9759275536052883, 0.5421781041659415, -0.24754683719947934, -0.017950518522411585, d=N:s=-0.244
+n:-0.30929664289578795, 0.8561625853180885, 0.4088287986814976, 0.8882395019754767, 0.21650573518127203, 0.19331082561984658, d=N:s=-0.105
 
-1023.0	//H
+435.0	//H
 3
-j:fr=0.866
-j:-0.06737845437601209, -0.511148823890835, -0.6820608270354569, -0.050604989752173424, 0.24702021200209856, -0.3239847649820149, fr=0.919, l=1.232
-j:
-j:0.7835460035130382, 0.9273255281150341, -0.23311695735901594, -0.8865740485489368, -0.45468741096556187, -0.0446697766892612, l=1.272
-j:0.7835460035130382, 0.9273255281150341, -0.23311695735901594, -0.8865740485489368, -0.45468741096556187, -0.0446697766892612, l=1.272
-j:0.7835460035130382, 0.9273255281150341, -0.23311695735901594, -0.8865740485489368, -0.45468741096556187, -0.0446697766892612, l=1.272
-j:-0.06737845437601209, -0.511148823890835, -0.6820608270354569, -0.050604989752173424, 0.24702021200209856, -0.3239847649820149, fr=0.919, l=1.232
-n:0.1043849429115653, 0.16895214468240738, 0.9238727670162916, 0.4633875167928636, -0.9087707279250026, -0.5816859439946711, d=Gpart:ry=-1.415
-n:0.1043849429115653, 0.16895214468240738, 0.9238727670162916, 0.4633875167928636, -0.9087707279250026, -0.5816859439946711, d=Gpart:ry=-1.415
+j:0.2685481063090265, 0.9178985385224223, 0.30558063788339496, 0.9767476636916399, -0.7959103863686323, -0.5822464828379452, rotstif=0.793, l=1.03
+j:-0.038212927524000406, 0.37732237251475453, 0.7609517863020301, -0.7625445714220405, -0.3640336534008384, -0.1714740232564509, l=1.359
+n:-0.4936176179908216, -0.7378895306028426, -0.9759275536052883, 0.5421781041659415, -0.24754683719947934, -0.017950518522411585, d=N:s=-0.244
 
-1736.0	//H
+435.0	//H
 3
-j:-0.06737845437601209, -0.511148823890835, -0.6820608270354569, -0.050604989752173424, 0.24702021200209856, -0.3239847649820149, fr=0.919, l=1.363
-j:0.7835460035130382, 0.9273255281150341, -0.23311695735901594, -0.8865740485489368, -0.45468741096556187, -0.0446697766892612, l=1.272
-j:-0.06737845437601209, -0.511148823890835, -0.6820608270354569, -0.050604989752173424, 0.24702021200209856, -0.3239847649820149, fr=0.919, l=1.232
-j:0.7835460035130382, 0.9273255281150341, -0.23311695735901594, -0.8865740485489368, -0.45468741096556187, -0.0446697766892612, l=1.272
-j:-0.06737845437601209, -0.511148823890835, -0.6820608270354569, -0.050604989752173424, 0.24702021200209856, -0.3239847649820149, fr=0.919, l=1.232
-j:
-j:0.7835460035130382, 0.9273255281150341, -0.23311695735901594, -0.8865740485489368, -0.45468741096556187, -0.0446697766892612, l=1.272
-j:-0.06737845437601209, -0.511148823890835, -0.6820608270354569, -0.050604989752173424, 0.24702021200209856, -0.3239847649820149, fr=0.919, l=1.232
-j:0.7835460035130382, 0.9273255281150341, -0.23311695735901594, -0.8865740485489368, -0.45468741096556187, -0.0446697766892612, l=1.272
-n:0.1043849429115653, 0.16895214468240738, 0.9238727670162916, 0.4633875167928636, -0.9087707279250026, -0.5816859439946711, d=Gpart:ry=-1.415
-n:0.1043849429115653, 0.16895214468240738, 0.9238727670162916, 0.4633875167928636, -0.9087707279250026, -0.5816859439946711, d=Gpart:ry=-1.415
-n:0.1043849429115653, 0.16895214468240738, 0.9238727670162916, 0.4633875167928636, -0.9087707279250026, -0.5816859439946711, d=Gpart:ry=-1.415
-n:0.1043849429115653, 0.16895214468240738, 0.9238727670162916, 0.4633875167928636, -0.9087707279250026, -0.5816859439946711, d=Gpart:ry=-1.415
+j:-0.038212927524000406, 0.37732237251475453, 0.7609517863020301, -0.7625445714220405, -0.3640336534008384, -0.1714740232564509, l=1.359
+j:-0.038212927524000406, 0.37732237251475453, 0.7609517863020301, -0.7625445714220405, -0.3640336534008384, -0.1714740232564509, fr=0.129, l=1.359
+n:-0.4936176179908216, -0.7378895306028426, -0.9759275536052883, 0.5421781041659415, -0.24754683719947934, -0.017950518522411585, d=N:s=-0.244
 
-1269.0	//H
+559.0	//H
 3
-j:-0.06737845437601209, -0.511148823890835, -0.6820608270354569, -0.050604989752173424, 0.24702021200209856, -0.3239847649820149, fr=0.919, l=1.232
-j:0.7835460035130382, 0.9273255281150341, -0.23311695735901594, -0.8865740485489368, -0.45468741096556187, -0.0446697766892612, l=1.272
-j:
-j:0.7835460035130382, 0.9273255281150341, -0.23311695735901594, -0.8865740485489368, -0.45468741096556187, -0.0446697766892612, l=1.272
-j:
-j:0.3556330786086619, -0.459984062705189, 0.47038804087787867, 0.13923680875450373, 0.40747456159442663, -0.4230471351183951, l=0.966
-j:0.7835460035130382, 0.9273255281150341, -0.23311695735901594, -0.8865740485489368, -0.45468741096556187, -0.0446697766892612, l=1.272
-j:-0.7859917231835425, 0.17938943253830075, 0.49079614458605647, 0.16680837189778686, 0.8729361924342811, 0.8815633179619908, l=1.217
-n:0.1043849429115653, 0.16895214468240738, 0.9238727670162916, 0.4633875167928636, -0.9087707279250026, -0.5816859439946711, d=Gpart:ry=-1.415
-n:0.1043849429115653, 0.16895214468240738, 0.9238727670162916, 0.4633875167928636, -0.9087707279250026, -0.5816859439946711, d=Gpart:ry=-1.415
-c:0.23696052748709917, 0.948512434028089, 0.9806900122202933, -0.5106971822679043, -0.25135360984131694, -0.9086807160638273, 0.005
+j:-0.038212927524000406, 0.37732237251475453, 0.7609517863020301, -0.7625445714220405, -0.3640336534008384, -0.1714740232564509, l=1.359
+j:-0.038212927524000406, 0.37732237251475453, 0.7609517863020301, -0.7625445714220405, -0.3640336534008384, -0.1714740232564509, l=1.359
+n:-0.4936176179908216, -0.7378895306028426, -0.9759275536052883, 0.5421781041659415, -0.24754683719947934, -0.017950518522411585, d=N:s=-0.244
+n:0.6790259419940412, 0.04474106524139643, 0.026149732992053032, -0.9338508220389485, -0.9687878657132387, -0.14240856189280748, d=*
 
 
Index: cpp/tests/evol_test-fL.goal
===================================================================
--- cpp/tests/evol_test-fL.goal	(revision 1301)
+++ cpp/tests/evol_test-fL.goal	(revision 1320)
@@ -1,61 +1,46 @@
 Evaluation 0	34,37.6,38	2,2,2	1,1,1	0,0,0	0,0,0	31,34.6,35
-Evaluation 10	34,47.7,77	2,2,2	1,1,1	0,0.2,1	0,0,0	31,44.5,74
-Evaluation 20	34,44.8,55	2,2,2	1,1,1	0,0,0	0,0,0	31,41.8,52
-Evaluation 30	34,46.4,55	2,2,2	1,1,1	0,0.1,1	0,0,0	31,43.3,52
-Evaluation 40	34,51.6,79	2,2,2	1,1,1	0,0.1,1	0,0,0	31,48.5,76
-Evaluation 50	36,52.8,62	2,2,2	1,1,1	0,0.3,1	0,0,0	32,49.5,58
-Evaluation 60	36,65.2,88	2,2.1,3	1,1.1,2	0,0.8,1	0,0,0	32,61.2,82
-Evaluation 70	36,70.5,96	2,2.2,3	1,1.2,2	0,1,2	0,0,0	32,66.1,90
-Evaluation 80	69,85.3,123	2,2,2	1,1,1	1,1.1,2	0,0,0	64,81.2,119
-Evaluation 90	70,98.3,127	2,2,2	1,1,1	1,1.1,2	0,0,0	66,94.2,123
-Evaluation 99	93,117.9,143	2,2,2	1,1,1	1,1.4,2	0,0.2,1	89,113.3,137
-143.0	//L
+Evaluation 10	34,44.7,63	2,2,2	1,1,1	0,0.2,1	0,0,0	31,41.5,59
+Evaluation 20	34,52.9,75	2,2,2	1,1,1	0,0.1,1	0,0,0	31,49.8,72
+Evaluation 30	34,63.2,109	2,2,2	1,1,1	0,0,0	0,0,0	31,60.2,106
+Evaluation 40	34,73.5,125	2,2.1,3	1,1.1,2	0,0.1,1	0,0.1,1	31,70.1,118
+Evaluation 50	34,77.2,126	2,2,2	1,1,1	0,0,0	0,0,0	31,74.2,123
+Evaluation 60	56,95.4,126	2,2.1,3	1,1.1,2	0,0.5,2	0,0,0	53,91.7,123
+Evaluation 70	56,110.7,145	2,2,2	1,1,1	0,1.8,3	0,0,0	53,105.9,139
+Evaluation 80	56,117.7,158	2,2,2	1,1,1	0,2.5,4	0,0.3,1	53,111.9,150
+Evaluation 90	112,147.7,180	2,2.1,3	1,1.1,2	3,4,5	0,0.9,1	106,139.6,172
+Evaluation 99	120,164.5,213	2,2,2	1,1,1	3,4.5,6	0,0.9,1	114,156.1,204
+158.0	//L
+i:axiom=rotY(1.9037489495240152)N(d=G)N(d=|:p=0.216)rotZ(0.43379396200180054)C(0.8684280035085976)N(d=Gpart:ry=-0.461)N(d=|:r=0.845)S(), maxwords=300
+
+134.0	//L
+i:axiom=N(d=G)N(d=|:p=0.216)rotZ(0.43379396200180054)C(0.8684280035085976)N(d=Gpart:ry=-0.461)N(d=|:r=0.845)S(), maxwords=300
+
+165.0	//L
+i:axiom=rotY(1.9037489495240152)N(d=G)N(d=|:p=0.216)rotZ(0.43379396200180054)C(0.8684280035085976)N(d=*)N(d=Gpart:ry=-0.461)N(d=|:r=0.845)S(), maxwords=300
+
+149.0	//L
 w:w0, 2
-w:w1, 2
-i:axiom=rotX(1.354823648929596)C(0.7401745021343231)w0()N(d=@:p=0.925)C(-0.6802658420056105)N(d=G)S(), 0.0, maxwords=300
+i:axiom=N(d=G)N(d=S)N(d=|:p=0.216)rotZ(0.43379396200180054)C(0.8684280035085976)N(d=Gpart:ry=-0.461)N(d=|:r=0.845)S(), maxwords=300
 
-127.0	//L
-w:w1, 2
+120.0	//L
 w:w0, 2
-i:axiom=rotX(1.354823648929596)C(0.7401745021343231)w0()C(-0.6802658420056105)N(d=G)S(), 0.0, maxwords=300
+i:axiom=N(d=G)rotZ(0.43379396200180054)C(0.8684280035085976)N(d=@:p=0.979)N(d=|:r=0.845)S(), maxwords=300
 
-123.0	//L
-w:w0, 2
-w:w1, 2
-i:axiom=N(d=Gpart:ry=-0.962)rotY(1.9037489495240152)C(0.7401745021343231)N(d=G)S(), 0.0, maxwords=300
+163.0	//L
+w:w0
+i:axiom=rotY(1.9037489495240152)N(d=G)N(d=|:p=0.216)rotZ(0.43379396200180054)C(0.8684280035085976)N(d=Gpart:ry=-0.461)N(d=|:r=0.845)S(), maxwords=300
 
-143.0	//L
-w:w0, 2
-w:w1, 2
-i:axiom=rotX(1.354823648929596)C(0.7401745021343231)w0()N(d=@:p=0.925)C(-0.6802658420056105)N(d=G)S(), 0.0, maxwords=300
+189.0	//L
+i:axiom=rotY(1.9037489495240152)N(d=G)N(d=|:p=0.216)rotZ(0.43379396200180054)C(0.8684280035085976)N(d=*)rotY(0.5448737954720855)N(d=Gpart:ry=-0.461)N(d=|:r=0.845)S(), maxwords=300
 
-102.0	//L
-w:w1, 2
-w:w0, 2
-i:axiom=rotY(1.9037489495240152)C(0.7401745021343231)N(d=G)S(), 0.0, maxwords=300
+213.0	//L
+i:axiom=rotY(1.9037489495240152)N(d=G)rotZ(1.4767806753516197)N(d=|:p=0.216)rotZ(0.43379396200180054)C(0.8684280035085976)N(d=*)rotY(0.5448737954720855)N(d=Gpart:ry=-0.461)N(d=|:r=0.845)S(), maxwords=300
 
-96.0	//L
-w:w1, 2
-w:w0, 2
-i:axiom=rotX(1.354823648929596)C(0.7401745021343231)N(d=G)S(), maxwords=300
+187.0	//L
+i:axiom=rotY(1.9037489495240152)N(d=@:p=0.991)N(d=N:fo=1.0)N(d=G)N(d=|:p=0.216)rotZ(0.43379396200180054)C(0.8684280035085976)N(d=Gpart:ry=-0.461)N(d=|:r=0.845)S(), maxwords=300
 
-123.0	//L
-w:w1, 2
-w:w0, 2
-i:axiom=N(d=Gpart:ry=-0.962)rotY(1.9037489495240152)C(0.7401745021343231)N(d=G)S(), 0.0, maxwords=300
-
-93.0	//L
-w:w0, 2
-i:axiom=rotX(1.354823648929596)C(0.7401745021343231)N(d=G)S(), 0.0, maxwords=300
-
-127.0	//L
-w:w0, 2
-w:w1, 2
-i:axiom=rotX(1.354823648929596)C(0.7401745021343231)w0()C(-0.6802658420056105)N(d=G)S(), 0.0, maxwords=300
-
-102.0	//L
-w:w0, 2
-w:w1, 2
-i:axiom=rotY(1.9037489495240152)C(0.7401745021343231)N(d=G)S(), 0.0, maxwords=300
+167.0	//L
+w:w0
+i:axiom=w0()rotY(1.9037489495240152)N(d=G)N(d=|:p=0.216)rotZ(0.43379396200180054)C(0.8684280035085976)N(d=Gpart:ry=-0.461)N(d=|:r=0.845)S(), maxwords=300
 
 
Index: cpp/tests/evol_test-fS.goal
===================================================================
--- cpp/tests/evol_test-fS.goal	(revision 1301)
+++ cpp/tests/evol_test-fS.goal	(revision 1320)
@@ -1,22 +1,22 @@
 Evaluation 0	37,42.4,43	1,1,1	0,0,0	0,0,0	0,0,0	36,41.4,42
-Evaluation 10	37,40,45	1,1,1	0,0,0	0,0,0	0,0,0	36,39,44
-Evaluation 20	30,50.8,130	1,1.1,2	0,0.1,1	0,0.3,2	0,0,0	29,49.3,126
-Evaluation 30	38,82.4,131	1,1.4,2	0,0.4,1	0,0.4,1	0,0,0	37,80.2,127
-Evaluation 40	38,91,130	1,1.3,2	0,0.3,1	0,0.3,1	0,0,0	37,89.1,126
-Evaluation 50	47,96.1,122	1,1.1,2	0,0.1,1	0,0.2,1	0,0,0	46,94.7,118
-Evaluation 60	98,106.2,113	1,1,1	0,0,0	0,0,0	0,0,0	97,105.2,112
-Evaluation 70	100,109.8,119	1,1,1	0,0,0	0,0.5,2	0,0,0	99,108.3,116
-Evaluation 80	112,114.8,118	1,1,1	0,0,0	0,0.8,2	0,0,0	110,113,115
-Evaluation 90	112,141.7,200	1,1.3,2	0,0.3,1	0,1.7,3	0,0,0	110,138.4,195
-Evaluation 99	116,183.7,224	1,1.7,2	0,0.7,1	1,2,3	0,0,0	114,179.3,218
-216.0	/*S*/1.1,0,0.4:cFiR[*;Gpart]{rx=0.6168,ry=1.4967,rz=-0.468,s=1.026,tx=-0.0382,ty=-0.5913,tz=1.197,x=0.7085,y=0.912,z=0.912}FR{rx=-0.9779,ry=0.174,rz=0.9518,tx=-0.4499,ty=-0.5055,tz=-0.8089,x=0.8736,y=0.8736,z=0.8736}
-215.0	/*S*/1.1,0,0.4:cFiR[*;Gpart]{rx=0.6168,ry=1.4967,rz=-0.468,s=1.026,tx=-0.0382,ty=-0.5913,tz=1.197,x=0.7085,y=0.912,z=0.912}R{rx=-0.9779,ry=0.174,rz=0.9518,tx=-0.4499,ty=-0.5055,tz=-0.8089,x=0.8736,y=0.8736,z=0.8736}
-224.0	/*S*/1.1,0,0.4:cFiR[*;Gpart]{rx=0.6168,ry=1.4967,rz=-0.468,s=1.026,tx=-0.0382,ty=-0.5913,tz=1.197,x=0.7085,y=0.912,z=0.912}FR[Gpart]{rx=-0.9779,ry=0.174,rz=0.9518,tx=-0.4499,ty=-0.5055,tz=-0.8089,x=0.8736,y=0.8736,z=0.8736}
-116.0	/*S*/1.1,0,0.4:csC[N]{rx=0.6168,ry=1.4967,rz=-0.3841,s=1.026,tx=-0.0382,ty=-0.5913,tz=1.197,x=0.6537,y=0.8414,z=0.8414}
-208.0	/*S*/1.1,0,0.4:ciC[*;Gpart]{rx=0.6168,ry=1.4967,rz=-0.468,s=1.026,tx=-0.0382,ty=-0.5913,tz=1.197,x=1.465,y=0.359,z=0.88}C{rx=-0.0202,ry=-1.4451,rz=1.0233,tx=-0.593,ty=-1.2751,tz=0.0792,x=1.299,y=1.145,z=1.64}
-117.0	/*S*/1.1,0,0.4:ciC[*;Gpart]{rx=0.6168,ry=1.4967,rz=2.579,s=1.026,tx=-0.0382,ty=-0.5913,tz=1.197,x=1.465,y=0.359,z=0.88}
-205.0	/*S*/1.1,0,0.4:cFiR[*;Gpart]{rx=0.6168,ry=1.4967,rz=-0.468,s=1.026,tx=-0.0382,ty=-0.5913,tz=1.197,x=0.7085,y=0.912,z=0.912}FR{rx=-0.9779,ry=0.174,rz=0.9518,tx=-0.4499,tz=-0.8089,x=0.8736,y=0.8736,z=0.8736}
-120.0	/*S*/1.1,0,0.4:ciR[*;Gpart]{rx=0.6168,ry=1.4967,rz=-0.468,s=1.026,tx=-0.0382,ty=-0.5913,tz=1.197,x=0.7085,y=0.912,z=0.912}
-201.0	/*S*/1.1,0,0.4:ciC[*;Gpart]{rx=0.6168,ry=1.4967,rz=-0.468,s=1.026,tx=-0.0382,ty=-0.5913,tz=1.197,x=0.6537,y=0.8414,z=0.8414}E{rx=-0.9779,ry=0.174,rz=0.9518,tx=-0.4499,ty=-0.5055,tz=-0.8089,x=1,y=1,z=1}
-215.0	/*S*/1.1,0,0.4:cFiR[*;Gpart]{rx=0.6168,ry=1.4967,rz=-0.468,s=1.026,tx=-0.0382,ty=-0.5913,tz=1.197,x=0.7085,y=0.912,z=0.912}R{rx=-0.9779,ry=0.174,rz=0.9518,tx=-0.4499,ty=-0.5055,tz=-0.8089,x=0.8736,y=0.8736,z=0.8736}
+Evaluation 10	37,39.4,43	1,1,1	0,0,0	0,0.1,1	0,0,0	36,38.3,42
+Evaluation 20	29,83.4,138	1,1.5,2	0,0.5,1	0,0,0	0,0,0	28,81.4,135
+Evaluation 30	46,122.4,139	1,1.8,2	0,0.8,1	0,0.1,1	0,0,0	45,119.7,136
+Evaluation 40	46,114.3,139	1,1.9,2	0,0.9,1	0,0,0	0,0,0	45,111.5,136
+Evaluation 50	127,134.6,143	2,2,2	1,1,1	0,0.3,1	0,0,0	124,131.3,139
+Evaluation 60	37,140.2,213	1,2.1,3	0,1.1,2	0,0.3,1	0,0,0	36,136.7,207
+Evaluation 70	119,154.7,221	2,2.2,3	1,1.2,2	0,0.6,1	0,0,0	115,150.7,216
+Evaluation 80	127,182.2,274	2,2.7,4	1,1.7,3	0,0.9,1	0,0,0	124,176.9,266
+Evaluation 90	154,224.8,285	2,3.4,4	1,2.4,3	1,1,1	0,0,0	150,218,277
+Evaluation 99	181,264,366	3,3.9,5	2,2.9,4	1,1.2,2	0,0.1,1	175,255.9,356
+270.0	/*S*/1.1,0,0.4:C{x=0.806,y=0.806,z=3.743}(cC[T:ry=-2.471;*]{x=0.806,y=0.806,z=3.743}bR{f=2.29,rx=-1.5401,ry=0.9311,rz=-0.6023,tx=-0.8168,ty=0.8387,tz=-1.0664,x=0.525,y=0.8736,z=0.8736},C{rx=-0.3851,ry=0.6445,rz=0.9719,tx=1.3427,ty=-0.2881,tz=0.6068,y=1.507,z=0.823})
+181.0	/*S*/1.1,0,0.4:C{x=0.806,y=0.806,z=3.743}C[T:ry=-2.471]{x=0.806,y=0.806,z=3.743}bR{f=2.29,rx=-1.5401,ry=0.9311,rz=-0.6023,tx=-0.8168,ty=0.8387,tz=-1.0664,x=0.525,y=0.8736,z=0.8736}
+267.0	/*S*/1.1,0,0.4:C{x=0.806,y=0.806,z=3.743}(cC[T:ry=-2.471]{x=0.806,y=0.806,z=3.743}bR{f=2.29,rx=-1.5401,ry=0.9311,rz=-0.6023,tx=-0.8168,ty=0.8387,tz=-1.0664,x=0.525,y=0.8736,z=0.8736},C{rx=-0.3851,ry=0.6445,rz=0.9719,tx=1.3427,ty=-0.2881,tz=0.6068,y=1.507,z=0.823})
+275.0	/*S*/1.1,0,0.4:C{x=0.806,y=0.806,z=3.743}(cC[T:ry=-2.471]{x=0.806,y=0.806,z=3.743}bR{f=2.29,rx=-1.5401,ry=0.9311,rz=-0.6023,tx=-0.8168,ty=0.8387,tz=-1.0664,x=0.525,y=0.8736,z=0.8736},C{rx=-0.3851,ry=0.6445,rz=0.9719,tx=1.3427,ty=-0.2881,tz=0.6068,x=1.945,y=1.507,z=0.823})
+366.0	/*S*/1.1,0,0.4:C{x=0.806,y=0.806,z=3.743}(bC[T:ry=-2.471]{x=0.806,y=0.806,z=3.743}bR{f=2.29,rx=-1.5401,ry=0.9311,rz=-0.6023,tx=-0.8168,ty=0.8387,tz=-1.0664,x=0.525,y=0.8736,z=0.8736}C{rx=-0.8053,ry=0.8926,rz=0.2785,tx=-1.4238,ty=-0.0331,tz=1.5646,x=0.587,y=1.169,z=1.913},C{rx=-0.3851,ry=0.6445,rz=0.9719,tx=1.3427,ty=-0.2881,tz=0.6068,x=1.945,y=1.507,z=0.823})
+282.0	/*S*/1.1,0,0.4:C{x=0.806,y=0.806,z=3.743}(cC[T:ry=-2.471]{x=0.806,y=0.806,z=3.743}bR[N,0]{f=2.29,rx=-1.5401,ry=0.9311,rz=-0.6023,tx=-0.8168,ty=0.8387,tz=-1.0664,x=0.525,y=0.8736,z=0.8736},C{rx=-0.3851,ry=0.6445,rz=0.9719,tx=1.3427,ty=-0.2881,tz=0.6068,x=1.945,y=1.507,z=0.823})
+181.0	/*S*/1.1,0,0.4:C{x=0.806,y=0.806,z=3.743}C[T:ry=-2.471]{x=0.806,y=0.806,z=3.743}bR{f=2.29,rx=-1.5401,ry=0.9311,rz=-0.6023,tx=-0.8168,ty=0.8387,tz=-1.0664,x=0.525,y=0.8736,z=0.8736}
+275.0	/*S*/1.1,0,0.4:C{x=0.806,y=0.806,z=3.743}(bC[T:ry=-2.471]{x=0.806,y=0.806,z=3.743}bR{f=2.29,rx=-1.5401,ry=0.9311,rz=-0.6023,tx=-0.8168,ty=0.8387,tz=-1.0664,x=0.525,y=0.8736,z=0.8736},C{rx=-0.3851,ry=0.6445,rz=0.9719,tx=1.3427,ty=-0.2881,tz=0.6068,x=1.945,y=1.507,z=0.823})
+275.0	/*S*/1.1,0,0.4:C{x=0.806,y=0.806,z=3.743}(cC[T:ry=-2.471]{x=0.806,y=0.806,z=3.743}bR{f=2.29,rx=-1.5401,ry=0.9311,rz=-0.6023,tx=-0.8168,ty=0.8387,tz=-1.0664,x=0.525,y=0.8736,z=0.8736},C{rx=-0.3851,ry=0.6445,rz=0.9719,tx=1.3427,ty=-0.2881,tz=0.6068,x=1.945,y=1.507,z=0.823})
+268.0	/*S*/1.1,0,0.4:C{x=0.806,y=0.806,z=3.743}(csC[T:ry=-2.471]{x=0.806,y=0.806,z=3.743}bR{f=2.29,rx=-1.5401,ry=0.9311,rz=-0.6023,tx=-0.8168,ty=0.8387,tz=-1.0664,x=0.525,y=0.8736,z=0.8736},C{rx=-0.3851,ry=0.6445,rz=0.9719,tx=1.3427,ty=-0.2881,tz=0.6068,y=1.507,z=0.823})
 
Index: cpp/tests/geometry_goals/f1.goal
===================================================================
--- cpp/tests/geometry_goals/f1.goal	(revision 1301)
+++ cpp/tests/geometry_goals/f1.goal	(revision 1320)
@@ -4,24 +4,24 @@
 p:sh=2, sx=0.05, sy=0.5, sz=0.05, vr=0.0, 1.0, 0.0
 p:sh=2, sx=0.05, sy=0.05, sz=0.5, vr=0.0, 0.0, 1.0
-p:y=-0.8325007346354043, -0.2, sh=1, sx=0.05, sy=0.05, sz=0.05, vr=1.0, 1.0, 0.0
-p:y=-0.8325007346354043, 0.2, sh=1, sx=0.05, sy=0.05, sz=0.05, vr=1.0, 1.0, 0.0
-p:y=0.8325007346354043, -0.2, sh=1, sx=0.05, sy=0.05, sz=0.05, vr=1.0, 1.0, 0.0
-p:y=0.8325007346354043, 0.2, sh=1, sx=0.05, sy=0.05, sz=0.05, vr=1.0, 1.0, 0.0
-p:3.4767959999999998, -0.8325007346354043, -0.2, sh=1, sx=0.05, sy=0.05, sz=0.05, vr=1.0, 1.0, 0.0
-p:3.4767959999999998, -0.8325007346354043, 0.2, sh=1, sx=0.05, sy=0.05, sz=0.05, vr=1.0, 1.0, 0.0
-p:3.4767959999999998, 0.8325007346354043, -0.2, sh=1, sx=0.05, sy=0.05, sz=0.05, vr=1.0, 1.0, 0.0
-p:3.4767959999999998, 0.8325007346354043, 0.2, sh=1, sx=0.05, sy=0.05, sz=0.05, vr=1.0, 1.0, 0.0
-p:1.7383979999999999, sh=2, sx=3.4997300503918867, sy=0.05, sz=0.05, rx=0.2342831811098684, -0.11454484673768733, -3.443227636570292e-17, vr=1.0, 0.0, 0.0
-p:1.7383979999999999, sh=2, sx=0.05, sy=1.7117636757570973, sz=0.05, rx=0.2342831811098684, -0.11454484673768733, -3.443227636570292e-17, vr=0.0, 1.0, 0.0
-p:1.7383979999999999, sh=2, sx=0.05, sy=0.05, sz=0.8923778124409683, rx=0.2342831811098684, -0.11454484673768733, -3.443227636570292e-17, vr=0.0, 0.0, 1.0
-p:0.3325, sh=3, sx=0.3325, sy=0.2, sz=0.2, rx=-1.5707963267948966, rz=3.141592653589793
-p:0.6649984710283758, -0.41624999999719187, sh=3, sx=0.41624999999999995, sy=0.2, sz=0.2, rz=1.5707926535897934
-p:0.9556250000000001, sh=3, sx=0.290625, sy=0.2, sz=0.2, rx=-1.5707963267948966, rz=3.141592653589793
-p:1.5264060000000002, sh=3, sx=0.28015599999999996, sy=0.2, sz=0.2, rx=-1.5707963267948966, rz=3.141592653589793
-p:1.8065605671634997, -0.3900779999973684, sh=3, sx=0.390078, sy=0.2, sz=0.2, rz=1.5707926535897931
-p:2.19664, sh=3, sx=0.3900779999999999, sy=0.2, sz=0.2, rx=-1.5707963267948966, rz=3.141592653589793
-p:3.031757, sh=3, sx=0.44503899999999996, sy=0.2, sz=0.2, rx=-1.5707963267948966, rz=3.141592653589793
-p:1.8065605671634997, 0.3900779999973684, sh=3, sx=0.390078, sy=0.2, sz=0.2, rz=-1.5707926535897931
-p:0.6649984710283758, 0.41624999999719187, sh=3, sx=0.41624999999999995, sy=0.2, sz=0.2, rz=-1.5707926535897934
+p:y=-0.8325005509751492, -0.15, sh=1, sx=0.05, sy=0.05, sz=0.05, vr=1.0, 1.0, 0.0
+p:y=-0.8325005509751492, 0.15, sh=1, sx=0.05, sy=0.05, sz=0.05, vr=1.0, 1.0, 0.0
+p:y=0.8325005509751492, -0.15, sh=1, sx=0.05, sy=0.05, sz=0.05, vr=1.0, 1.0, 0.0
+p:y=0.8325005509751492, 0.15, sh=1, sx=0.05, sy=0.05, sz=0.05, vr=1.0, 1.0, 0.0
+p:3.4767959999999998, -0.8325005509751492, -0.15, sh=1, sx=0.05, sy=0.05, sz=0.05, vr=1.0, 1.0, 0.0
+p:3.4767959999999998, -0.8325005509751492, 0.15, sh=1, sx=0.05, sy=0.05, sz=0.05, vr=1.0, 1.0, 0.0
+p:3.4767959999999998, 0.8325005509751492, -0.15, sh=1, sx=0.05, sy=0.05, sz=0.05, vr=1.0, 1.0, 0.0
+p:3.4767959999999998, 0.8325005509751492, 0.15, sh=1, sx=0.05, sy=0.05, sz=0.05, vr=1.0, 1.0, 0.0
+p:1.7383979999999999, sh=2, sx=3.4897149490489903, sy=0.05, sz=0.05, rx=0.1776213289780406, -0.08607314756290158, -3.2671104874555106e-17, vr=1.0, 0.0, 0.0
+p:1.7383979999999999, sh=2, sx=0.05, sy=1.6916145755300782, sz=0.05, rx=0.1776213289780406, -0.08607314756290158, -3.2671104874555106e-17, vr=0.0, 1.0, 0.0
+p:1.7383979999999999, sh=2, sx=0.05, sy=0.05, sz=0.6791989526823026, rx=0.1776213289780406, -0.08607314756290158, -3.2671104874555106e-17, vr=0.0, 0.0, 1.0
+p:0.3325, sh=3, sx=0.3325, sy=0.15, sz=0.15, rx=-1.5707963267948966, rz=3.141592653589793
+p:0.6649984710283758, -0.41624999999719187, sh=3, sx=0.41624999999999995, sy=0.15, sz=0.15, rz=1.5707926535897934
+p:0.9556250000000001, sh=3, sx=0.290625, sy=0.15, sz=0.15, rx=-1.5707963267948966, rz=3.141592653589793
+p:1.5264060000000002, sh=3, sx=0.28015599999999996, sy=0.15, sz=0.15, rx=-1.5707963267948966, rz=3.141592653589793
+p:1.8065605671634997, -0.3900779999973684, sh=3, sx=0.390078, sy=0.15, sz=0.15, rz=1.5707926535897931
+p:2.19664, sh=3, sx=0.3900779999999999, sy=0.15, sz=0.15, rx=-1.5707963267948966, rz=3.141592653589793
+p:3.031757, sh=3, sx=0.44503899999999996, sy=0.15, sz=0.15, rx=-1.5707963267948966, rz=3.141592653589793
+p:1.8065605671634997, 0.3900779999973684, sh=3, sx=0.390078, sy=0.15, sz=0.15, rz=-1.5707926535897931
+p:0.6649984710283758, 0.41624999999719187, sh=3, sx=0.41624999999999995, sy=0.15, sz=0.15, rz=-1.5707926535897934
 j:0, 1, sh=1
 j:0, 2, sh=1
@@ -48,12 +48,12 @@
 j:0, 15, sh=1
 
-# volume=0.463110
-# area=7.221219
-# sizes.x=3.499730 sizes.y=1.711764 sizes.z=0.892378
-# axes.x=(0.993447, -0.000000, -0.114295)
-# axes.y=(0.026533, 0.972681, 0.230625)
-# axes.z=(0.111172, -0.232146, 0.966307)
+# volume=0.347332
+# area=5.180295
+# sizes.x=3.489715 sizes.y=1.691615 sizes.z=0.679199
+# axes.x=(0.996298, -0.000000, -0.085967)
+# axes.y=(0.015189, 0.984267, 0.176035)
+# axes.z=(0.084614, -0.176689, 0.980623)
 # box.x=[0.000000, 3.476796]
 # box.y=[-0.832501, 0.832501]
-# box.z=[-0.200000, 0.200000]
+# box.z=[-0.150000, 0.150000]
 
Index: cpp/tests/shapeconvert.goal
===================================================================
--- cpp/tests/shapeconvert.goal	(revision 1301)
+++ cpp/tests/shapeconvert.goal	(revision 1320)
@@ -1,7 +1,7 @@
 //0s
-p:0.5, sh=3, sx=0.5, sy=0.20000000298023224, sz=0.20000000298023224, rx=-1.5707963267948966, rz=3.141592653589793
-p:1.249998939636273, -0.4330133140917716, sh=3, sx=0.5, sy=0.20000000298023224, sz=0.20000000298023224, rz=2.0943926535897934
-p:1.249998939636273, 0.4330133140917716, sh=3, sx=0.5, sy=0.20000000298023224, sz=0.20000000298023224, rz=-2.0943926535897934
-p:1.7499968189088184, 1.2990399422753147, sh=3, sx=0.5, sy=0.20000000298023224, sz=0.20000000298023224, rz=-2.0943926535897934
+p:0.5, sh=3, sx=0.5, sy=0.15000000596046448, sz=0.15000000596046448, rx=-1.5707963267948966, rz=3.141592653589793
+p:1.249998939636273, -0.4330133140917716, sh=3, sx=0.5, sy=0.15000000596046448, sz=0.15000000596046448, rz=2.0943926535897934
+p:1.249998939636273, 0.4330133140917716, sh=3, sx=0.5, sy=0.15000000596046448, sz=0.15000000596046448, rz=-2.0943926535897934
+p:1.7499968189088184, 1.2990399422753147, sh=3, sx=0.5, sy=0.15000000596046448, sz=0.15000000596046448, rz=-2.0943926535897934
 j:0, 1, sh=1
 j:0, 2, sh=1
Index: cpp/tests/similarity_goals/distribution.goal
===================================================================
--- cpp/tests/similarity_goals/distribution.goal	(revision 1301)
+++ cpp/tests/similarity_goals/distribution.goal	(revision 1320)
@@ -1,6 +1,6 @@
-0.00	0.53	0.24	0.44	0.78	
-0.53	0.00	0.73	0.25	1.30	
-0.24	0.73	0.00	0.66	0.57	
-0.44	0.25	0.66	0.00	1.22	
-0.78	1.30	0.57	1.22	0.00	
+0.00	0.54	0.25	0.48	0.74	
+0.54	0.00	0.75	0.25	1.27	
+0.25	0.75	0.00	0.70	0.52	
+0.48	0.25	0.70	0.00	1.22	
+0.74	1.27	0.52	1.22	0.00	
 
