changeset 14:3f103cf78148

Checking to allow offline version
author Andrew N Robertson <andrew.robertson@eecs.qmul.ac.uk>
date Thu, 10 Nov 2011 17:29:45 +0000
parents bba4a9da57f1
children 9e972948d654
files .DS_Store maxPatchToPlayFiles/playMidiTranscription.maxhelp src/BayesianArrayStructure.cpp src/BayesianArrayStructure.h src/CannamMidiFileLoader.cpp src/midiEventHolder.cpp src/midiEventHolder.h src/testApp.cpp workingNotes.rtf
diffstat 9 files changed, 1003 insertions(+), 940 deletions(-) [+]
line wrap: on
line diff
Binary file .DS_Store has changed
--- a/maxPatchToPlayFiles/playMidiTranscription.maxhelp	Thu Oct 27 21:30:42 2011 +0100
+++ b/maxPatchToPlayFiles/playMidiTranscription.maxhelp	Thu Nov 10 17:29:45 2011 +0000
@@ -22,13 +22,13 @@
 				"box" : 				{
 					"maxclass" : "newobj",
 					"text" : "loadmess 1",
-					"fontname" : "Verdana",
 					"numoutlets" : 1,
 					"outlettype" : [ "" ],
 					"fontsize" : 10.0,
 					"patching_rect" : [ 204.0, 548.0, 68.0, 19.0 ],
 					"id" : "obj-3",
-					"numinlets" : 1
+					"numinlets" : 1,
+					"fontname" : "Verdana"
 				}
 
 			}
@@ -36,14 +36,14 @@
 				"box" : 				{
 					"maxclass" : "comment",
 					"text" : "midi on/off",
-					"fontname" : "Verdana",
 					"numoutlets" : 0,
-					"presentation_rect" : [ 268.0, 131.0, 66.0, 19.0 ],
 					"fontsize" : 10.0,
+					"presentation_rect" : [ 150.0, 124.0, 66.0, 19.0 ],
 					"patching_rect" : [ 289.0, 294.0, 150.0, 19.0 ],
 					"presentation" : 1,
 					"id" : "obj-8",
-					"numinlets" : 1
+					"numinlets" : 1,
+					"fontname" : "Verdana"
 				}
 
 			}
@@ -53,14 +53,14 @@
 					"text" : "plays midi and accompanying audio too",
 					"linecount" : 2,
 					"presentation_linecount" : 2,
-					"fontname" : "Verdana",
 					"numoutlets" : 0,
+					"fontsize" : 10.0,
 					"presentation_rect" : [ 337.0, 464.0, 150.0, 31.0 ],
-					"fontsize" : 10.0,
 					"patching_rect" : [ 337.0, 464.0, 150.0, 31.0 ],
 					"presentation" : 1,
 					"id" : "obj-6",
-					"numinlets" : 1
+					"numinlets" : 1,
+					"fontname" : "Verdana"
 				}
 
 			}
@@ -69,7 +69,7 @@
 					"maxclass" : "toggle",
 					"numoutlets" : 1,
 					"outlettype" : [ "int" ],
-					"presentation_rect" : [ 243.0, 130.0, 20.0, 20.0 ],
+					"presentation_rect" : [ 125.0, 123.0, 20.0, 20.0 ],
 					"patching_rect" : [ 12.0, 493.0, 20.0, 20.0 ],
 					"presentation" : 1,
 					"id" : "obj-4",
@@ -81,13 +81,13 @@
 				"box" : 				{
 					"maxclass" : "newobj",
 					"text" : "gate",
-					"fontname" : "Verdana",
 					"numoutlets" : 1,
 					"outlettype" : [ "" ],
 					"fontsize" : 10.0,
 					"patching_rect" : [ 30.0, 510.0, 33.0, 19.0 ],
 					"id" : "obj-1",
-					"numinlets" : 2
+					"numinlets" : 2,
+					"fontname" : "Verdana"
 				}
 
 			}
@@ -95,14 +95,14 @@
 				"box" : 				{
 					"maxclass" : "comment",
 					"text" : "midi",
-					"fontname" : "Verdana",
 					"numoutlets" : 0,
+					"fontsize" : 10.0,
 					"presentation_rect" : [ 52.0, 420.0, 150.0, 19.0 ],
-					"fontsize" : 10.0,
 					"patching_rect" : [ 55.0, 428.0, 150.0, 19.0 ],
 					"presentation" : 1,
 					"id" : "obj-11",
-					"numinlets" : 1
+					"numinlets" : 1,
+					"fontname" : "Verdana"
 				}
 
 			}
@@ -110,13 +110,13 @@
 				"box" : 				{
 					"maxclass" : "newobj",
 					"text" : "p noise",
-					"fontname" : "Verdana",
 					"numoutlets" : 1,
 					"outlettype" : [ "float" ],
 					"fontsize" : 10.0,
 					"patching_rect" : [ 531.0, 562.0, 73.0, 19.0 ],
 					"id" : "obj-9",
 					"numinlets" : 5,
+					"fontname" : "Verdana",
 					"patcher" : 					{
 						"fileversion" : 1,
 						"rect" : [ 0.0, 0.0, 640.0, 480.0 ],
@@ -140,13 +140,13 @@
 								"box" : 								{
 									"maxclass" : "newobj",
 									"text" : "+ 1.",
-									"fontname" : "Verdana",
 									"numoutlets" : 1,
 									"outlettype" : [ "float" ],
 									"fontsize" : 10.0,
 									"patching_rect" : [ 51.0, 236.0, 42.0, 19.0 ],
 									"id" : "obj-97",
-									"numinlets" : 2
+									"numinlets" : 2,
+									"fontname" : "Verdana"
 								}
 
 							}
@@ -154,26 +154,26 @@
 								"box" : 								{
 									"maxclass" : "newobj",
 									"text" : "* 0.05",
-									"fontname" : "Verdana",
 									"numoutlets" : 1,
 									"outlettype" : [ "float" ],
 									"fontsize" : 10.0,
 									"patching_rect" : [ 50.0, 200.0, 43.0, 19.0 ],
 									"id" : "obj-96",
-									"numinlets" : 2
+									"numinlets" : 2,
+									"fontname" : "Verdana"
 								}
 
 							}
 , 							{
 								"box" : 								{
 									"maxclass" : "flonum",
-									"fontname" : "Verdana",
 									"numoutlets" : 2,
 									"outlettype" : [ "float", "bang" ],
 									"fontsize" : 10.0,
 									"patching_rect" : [ 53.0, 163.0, 50.0, 19.0 ],
 									"id" : "obj-91",
-									"numinlets" : 1
+									"numinlets" : 1,
+									"fontname" : "Verdana"
 								}
 
 							}
@@ -192,13 +192,13 @@
 								"box" : 								{
 									"maxclass" : "newobj",
 									"text" : "snapshot~",
-									"fontname" : "Verdana",
 									"numoutlets" : 1,
 									"outlettype" : [ "float" ],
 									"fontsize" : 10.0,
 									"patching_rect" : [ 53.0, 133.0, 64.0, 19.0 ],
 									"id" : "obj-87",
-									"numinlets" : 2
+									"numinlets" : 2,
+									"fontname" : "Verdana"
 								}
 
 							}
@@ -206,13 +206,13 @@
 								"box" : 								{
 									"maxclass" : "newobj",
 									"text" : "cycle~ 0.05",
-									"fontname" : "Verdana",
 									"numoutlets" : 1,
 									"outlettype" : [ "signal" ],
 									"fontsize" : 10.0,
 									"patching_rect" : [ 84.0, 108.0, 71.0, 19.0 ],
 									"id" : "obj-86",
-									"numinlets" : 2
+									"numinlets" : 2,
+									"fontname" : "Verdana"
 								}
 
 							}
@@ -290,8 +290,8 @@
  ],
 						"lines" : [ 							{
 								"patchline" : 								{
-									"source" : [ "obj-97", 0 ],
-									"destination" : [ "obj-8", 0 ],
+									"source" : [ "obj-91", 0 ],
+									"destination" : [ "obj-96", 0 ],
 									"hidden" : 0,
 									"midpoints" : [  ]
 								}
@@ -299,8 +299,8 @@
 							}
 , 							{
 								"patchline" : 								{
-									"source" : [ "obj-7", 0 ],
-									"destination" : [ "obj-86", 1 ],
+									"source" : [ "obj-87", 0 ],
+									"destination" : [ "obj-91", 0 ],
 									"hidden" : 0,
 									"midpoints" : [  ]
 								}
@@ -308,43 +308,7 @@
 							}
 , 							{
 								"patchline" : 								{
-									"source" : [ "obj-6", 0 ],
-									"destination" : [ "obj-86", 0 ],
-									"hidden" : 0,
-									"midpoints" : [  ]
-								}
-
-							}
-, 							{
-								"patchline" : 								{
-									"source" : [ "obj-5", 0 ],
-									"destination" : [ "obj-97", 1 ],
-									"hidden" : 0,
-									"midpoints" : [  ]
-								}
-
-							}
-, 							{
-								"patchline" : 								{
-									"source" : [ "obj-4", 0 ],
-									"destination" : [ "obj-96", 1 ],
-									"hidden" : 0,
-									"midpoints" : [  ]
-								}
-
-							}
-, 							{
-								"patchline" : 								{
-									"source" : [ "obj-3", 0 ],
-									"destination" : [ "obj-89", 0 ],
-									"hidden" : 0,
-									"midpoints" : [  ]
-								}
-
-							}
-, 							{
-								"patchline" : 								{
-									"source" : [ "obj-86", 0 ],
+									"source" : [ "obj-89", 0 ],
 									"destination" : [ "obj-87", 0 ],
 									"hidden" : 0,
 									"midpoints" : [  ]
@@ -362,7 +326,7 @@
 							}
 , 							{
 								"patchline" : 								{
-									"source" : [ "obj-89", 0 ],
+									"source" : [ "obj-86", 0 ],
 									"destination" : [ "obj-87", 0 ],
 									"hidden" : 0,
 									"midpoints" : [  ]
@@ -371,8 +335,8 @@
 							}
 , 							{
 								"patchline" : 								{
-									"source" : [ "obj-87", 0 ],
-									"destination" : [ "obj-91", 0 ],
+									"source" : [ "obj-3", 0 ],
+									"destination" : [ "obj-89", 0 ],
 									"hidden" : 0,
 									"midpoints" : [  ]
 								}
@@ -380,8 +344,44 @@
 							}
 , 							{
 								"patchline" : 								{
-									"source" : [ "obj-91", 0 ],
-									"destination" : [ "obj-96", 0 ],
+									"source" : [ "obj-4", 0 ],
+									"destination" : [ "obj-96", 1 ],
+									"hidden" : 0,
+									"midpoints" : [  ]
+								}
+
+							}
+, 							{
+								"patchline" : 								{
+									"source" : [ "obj-5", 0 ],
+									"destination" : [ "obj-97", 1 ],
+									"hidden" : 0,
+									"midpoints" : [  ]
+								}
+
+							}
+, 							{
+								"patchline" : 								{
+									"source" : [ "obj-6", 0 ],
+									"destination" : [ "obj-86", 0 ],
+									"hidden" : 0,
+									"midpoints" : [  ]
+								}
+
+							}
+, 							{
+								"patchline" : 								{
+									"source" : [ "obj-7", 0 ],
+									"destination" : [ "obj-86", 1 ],
+									"hidden" : 0,
+									"midpoints" : [  ]
+								}
+
+							}
+, 							{
+								"patchline" : 								{
+									"source" : [ "obj-97", 0 ],
+									"destination" : [ "obj-8", 0 ],
 									"hidden" : 0,
 									"midpoints" : [  ]
 								}
@@ -391,13 +391,13 @@
 					}
 ,
 					"saved_object_attributes" : 					{
-						"fontname" : "Arial",
-						"default_fontsize" : 12.0,
+						"globalpatchername" : "",
 						"fontface" : 0,
 						"fontsize" : 12.0,
 						"default_fontface" : 0,
 						"default_fontname" : "Arial",
-						"globalpatchername" : ""
+						"fontname" : "Arial",
+						"default_fontsize" : 12.0
 					}
 
 				}
@@ -407,13 +407,13 @@
 				"box" : 				{
 					"maxclass" : "newobj",
 					"text" : "loadmess 1",
-					"fontname" : "Verdana",
 					"numoutlets" : 1,
 					"outlettype" : [ "" ],
 					"fontsize" : 10.0,
 					"patching_rect" : [ 123.0, 815.0, 68.0, 19.0 ],
 					"id" : "obj-138",
-					"numinlets" : 1
+					"numinlets" : 1,
+					"fontname" : "Verdana"
 				}
 
 			}
@@ -421,31 +421,31 @@
 				"box" : 				{
 					"maxclass" : "newobj",
 					"text" : "prepend /setSpeedPrior",
-					"fontname" : "Verdana",
 					"numoutlets" : 1,
 					"outlettype" : [ "" ],
+					"fontsize" : 10.0,
 					"presentation_rect" : [ 128.0, 383.0, 129.0, 19.0 ],
-					"fontsize" : 10.0,
 					"patching_rect" : [ 122.0, 877.0, 129.0, 19.0 ],
 					"presentation" : 1,
 					"id" : "obj-137",
-					"numinlets" : 1
+					"numinlets" : 1,
+					"fontname" : "Verdana"
 				}
 
 			}
 , 			{
 				"box" : 				{
 					"maxclass" : "flonum",
-					"fontname" : "Verdana",
 					"numoutlets" : 2,
+					"minimum" : 0.0,
 					"outlettype" : [ "float", "bang" ],
+					"fontsize" : 10.0,
 					"presentation_rect" : [ 133.0, 351.0, 50.0, 19.0 ],
-					"fontsize" : 10.0,
-					"minimum" : 0.0,
 					"patching_rect" : [ 122.0, 838.0, 50.0, 19.0 ],
 					"presentation" : 1,
 					"id" : "obj-136",
-					"numinlets" : 1
+					"numinlets" : 1,
+					"fontname" : "Verdana"
 				}
 
 			}
@@ -486,13 +486,13 @@
 				"box" : 				{
 					"maxclass" : "message",
 					"text" : "0",
-					"fontname" : "Verdana",
 					"numoutlets" : 1,
 					"outlettype" : [ "" ],
 					"fontsize" : 10.0,
 					"patching_rect" : [ 660.0, 329.0, 32.5, 17.0 ],
 					"id" : "obj-128",
-					"numinlets" : 2
+					"numinlets" : 2,
+					"fontname" : "Verdana"
 				}
 
 			}
@@ -500,13 +500,13 @@
 				"box" : 				{
 					"maxclass" : "newobj",
 					"text" : "gate",
-					"fontname" : "Verdana",
 					"numoutlets" : 1,
 					"outlettype" : [ "" ],
 					"fontsize" : 10.0,
 					"patching_rect" : [ 660.0, 282.0, 33.0, 19.0 ],
 					"id" : "obj-126",
-					"numinlets" : 2
+					"numinlets" : 2,
+					"fontname" : "Verdana"
 				}
 
 			}
@@ -514,13 +514,13 @@
 				"box" : 				{
 					"maxclass" : "message",
 					"text" : "1",
-					"fontname" : "Verdana",
 					"numoutlets" : 1,
 					"outlettype" : [ "" ],
 					"fontsize" : 10.0,
 					"patching_rect" : [ 633.0, 226.0, 32.5, 17.0 ],
 					"id" : "obj-125",
-					"numinlets" : 2
+					"numinlets" : 2,
+					"fontname" : "Verdana"
 				}
 
 			}
@@ -528,13 +528,13 @@
 				"box" : 				{
 					"maxclass" : "newobj",
 					"text" : "loadbang",
-					"fontname" : "Verdana",
 					"numoutlets" : 1,
 					"outlettype" : [ "bang" ],
 					"fontsize" : 10.0,
 					"patching_rect" : [ 618.0, 190.0, 56.0, 19.0 ],
 					"id" : "obj-123",
-					"numinlets" : 1
+					"numinlets" : 1,
+					"fontname" : "Verdana"
 				}
 
 			}
@@ -542,13 +542,13 @@
 				"box" : 				{
 					"maxclass" : "newobj",
 					"text" : "p otherFtmControls",
-					"fontname" : "Verdana",
 					"numoutlets" : 1,
 					"outlettype" : [ "" ],
 					"fontsize" : 10.0,
 					"patching_rect" : [ 19.0, 88.0, 108.0, 19.0 ],
 					"id" : "obj-115",
 					"numinlets" : 0,
+					"fontname" : "Verdana",
 					"patcher" : 					{
 						"fileversion" : 1,
 						"rect" : [ 0.0, 0.0, 640.0, 480.0 ],
@@ -574,14 +574,14 @@
 									"text" : "ordinary file following (x) or else one shot test",
 									"linecount" : 2,
 									"presentation_linecount" : 2,
-									"fontname" : "Verdana",
 									"numoutlets" : 0,
+									"fontsize" : 10.0,
 									"presentation_rect" : [ 52.0, 186.0, 156.0, 31.0 ],
-									"fontsize" : 10.0,
 									"patching_rect" : [ 87.0, 206.0, 153.0, 31.0 ],
 									"presentation" : 1,
 									"id" : "obj-111",
-									"numinlets" : 1
+									"numinlets" : 1,
+									"fontname" : "Verdana"
 								}
 
 							}
@@ -589,33 +589,33 @@
 								"box" : 								{
 									"maxclass" : "comment",
 									"text" : "set speed",
-									"fontname" : "Verdana",
 									"numoutlets" : 0,
 									"fontsize" : 10.0,
 									"patching_rect" : [ 362.0, 263.0, 57.0, 19.0 ],
 									"id" : "obj-3",
-									"numinlets" : 1
+									"numinlets" : 1,
+									"fontname" : "Verdana"
 								}
 
 							}
 , 							{
 								"box" : 								{
 									"maxclass" : "ftm.mess",
-									"fontname" : "Verdana",
+									"#init" : "",
 									"numoutlets" : 1,
+									"ftm_scope" : 1,
+									"outlettype" : [ "" ],
+									"fontsize" : 10.0,
+									"text" : [ "_loop 500 1500 1." ],
 									"#loadbang" : 0,
-									"outlettype" : [ "" ],
+									"#untuple" : 0,
 									"presentation_rect" : [ 216.0, 166.0, 92.157234, 17.0 ],
 									"#triggerall" : 0,
-									"text" : [ "_loop 500 1500 1." ],
-									"fontsize" : 10.0,
 									"ftm_objref_conv" : 0,
 									"patching_rect" : [ 216.0, 166.0, 92.157234, 17.0 ],
 									"id" : "obj-4",
-									"#init" : "",
-									"ftm_scope" : 1,
 									"numinlets" : 2,
-									"#untuple" : 0
+									"fontname" : "Verdana"
 								}
 
 							}
@@ -623,33 +623,33 @@
 								"box" : 								{
 									"maxclass" : "comment",
 									"text" : "set segment (begin, end and speed) and loop",
-									"fontname" : "Verdana",
 									"numoutlets" : 0,
 									"fontsize" : 10.0,
 									"patching_rect" : [ 306.0, 167.0, 240.0, 19.0 ],
 									"id" : "obj-5",
-									"numinlets" : 1
+									"numinlets" : 1,
+									"fontname" : "Verdana"
 								}
 
 							}
 , 							{
 								"box" : 								{
 									"maxclass" : "ftm.mess",
-									"fontname" : "Verdana",
+									"#init" : "",
 									"numoutlets" : 1,
+									"ftm_scope" : 0,
+									"outlettype" : [ "" ],
+									"fontsize" : 10.0,
+									"text" : [ "_play $play.seq 500 1500 1." ],
 									"#loadbang" : 0,
-									"outlettype" : [ "" ],
+									"#untuple" : 0,
 									"presentation_rect" : [ 216.0, 146.0, 142.66507, 17.0 ],
 									"#triggerall" : 0,
-									"text" : [ "_play $play.seq 500 1500 1." ],
-									"fontsize" : 10.0,
 									"ftm_objref_conv" : 0,
 									"patching_rect" : [ 216.0, 146.0, 142.66507, 17.0 ],
 									"id" : "obj-6",
-									"#init" : "",
-									"ftm_scope" : 0,
 									"numinlets" : 2,
-									"#untuple" : 0
+									"fontname" : "Verdana"
 								}
 
 							}
@@ -657,12 +657,12 @@
 								"box" : 								{
 									"maxclass" : "comment",
 									"text" : "set segment (track, begin, end and speed) and play",
-									"fontname" : "Verdana",
 									"numoutlets" : 0,
 									"fontsize" : 10.0,
 									"patching_rect" : [ 370.0, 147.0, 272.0, 19.0 ],
 									"id" : "obj-7",
-									"numinlets" : 1
+									"numinlets" : 1,
+									"fontname" : "Verdana"
 								}
 
 							}
@@ -670,25 +670,25 @@
 								"box" : 								{
 									"maxclass" : "comment",
 									"text" : "advance to next time",
-									"fontname" : "Verdana",
 									"numoutlets" : 0,
 									"fontsize" : 10.0,
 									"patching_rect" : [ 88.0, 258.0, 115.0, 19.0 ],
 									"id" : "obj-8",
-									"numinlets" : 1
+									"numinlets" : 1,
+									"fontname" : "Verdana"
 								}
 
 							}
 , 							{
 								"box" : 								{
 									"maxclass" : "slider",
+									"orientation" : 1,
 									"numoutlets" : 1,
 									"outlettype" : [ "" ],
+									"size" : 1001.0,
 									"patching_rect" : [ 162.0, 238.0, 169.0, 15.0 ],
-									"size" : 1001.0,
 									"id" : "obj-9",
 									"numinlets" : 1,
-									"orientation" : 1,
 									"mult" : 10.0
 								}
 
@@ -697,12 +697,12 @@
 								"box" : 								{
 									"maxclass" : "comment",
 									"text" : "locate or jump at given time",
-									"fontname" : "Verdana",
 									"numoutlets" : 0,
 									"fontsize" : 10.0,
 									"patching_rect" : [ 114.0, 121.0, 151.0, 19.0 ],
 									"id" : "obj-10",
-									"numinlets" : 1
+									"numinlets" : 1,
+									"fontname" : "Verdana"
 								}
 
 							}
@@ -710,13 +710,13 @@
 								"box" : 								{
 									"maxclass" : "message",
 									"text" : "next",
-									"fontname" : "Verdana",
 									"numoutlets" : 1,
 									"outlettype" : [ "" ],
 									"fontsize" : 10.0,
 									"patching_rect" : [ 50.0, 257.0, 33.0, 17.0 ],
 									"id" : "obj-11",
-									"numinlets" : 2
+									"numinlets" : 2,
+									"fontname" : "Verdana"
 								}
 
 							}
@@ -724,13 +724,13 @@
 								"box" : 								{
 									"maxclass" : "message",
 									"text" : "jump 300.",
-									"fontname" : "Verdana",
 									"numoutlets" : 1,
 									"outlettype" : [ "" ],
 									"fontsize" : 10.0,
 									"patching_rect" : [ 50.0, 119.0, 62.0, 17.0 ],
 									"id" : "obj-12",
-									"numinlets" : 2
+									"numinlets" : 2,
+									"fontname" : "Verdana"
 								}
 
 							}
@@ -738,12 +738,12 @@
 								"box" : 								{
 									"maxclass" : "comment",
 									"text" : "set speed by giving a duration for the current segment",
-									"fontname" : "Verdana",
 									"numoutlets" : 0,
 									"fontsize" : 10.0,
 									"patching_rect" : [ 336.0, 281.0, 285.0, 19.0 ],
 									"id" : "obj-23",
-									"numinlets" : 1
+									"numinlets" : 1,
+									"fontname" : "Verdana"
 								}
 
 							}
@@ -751,12 +751,12 @@
 								"box" : 								{
 									"maxclass" : "comment",
 									"text" : "set segment (only begin and end) and play straight",
-									"fontname" : "Verdana",
 									"numoutlets" : 0,
 									"fontsize" : 10.0,
 									"patching_rect" : [ 354.0, 120.0, 270.0, 19.0 ],
 									"id" : "obj-24",
-									"numinlets" : 1
+									"numinlets" : 1,
+									"fontname" : "Verdana"
 								}
 
 							}
@@ -764,12 +764,12 @@
 								"box" : 								{
 									"maxclass" : "comment",
 									"text" : "play current segment",
-									"fontname" : "Verdana",
 									"numoutlets" : 0,
 									"fontsize" : 10.0,
 									"patching_rect" : [ 86.0, 147.0, 116.0, 19.0 ],
 									"id" : "obj-25",
-									"numinlets" : 1
+									"numinlets" : 1,
+									"fontname" : "Verdana"
 								}
 
 							}
@@ -777,50 +777,50 @@
 								"box" : 								{
 									"maxclass" : "message",
 									"text" : "speed 0.5",
-									"fontname" : "Verdana",
 									"numoutlets" : 1,
 									"outlettype" : [ "" ],
 									"fontsize" : 10.0,
 									"patching_rect" : [ 299.0, 262.0, 58.0, 17.0 ],
 									"id" : "obj-26",
-									"numinlets" : 2
+									"numinlets" : 2,
+									"fontname" : "Verdana"
 								}
 
 							}
 , 							{
 								"box" : 								{
 									"maxclass" : "ftm.mess",
-									"fontname" : "Verdana",
+									"#init" : "",
 									"numoutlets" : 1,
+									"ftm_scope" : 0,
+									"outlettype" : [ "" ],
+									"fontsize" : 10.0,
+									"text" : [ "_set 0 9999999" ],
 									"#loadbang" : 0,
-									"outlettype" : [ "" ],
+									"#untuple" : 0,
 									"presentation_rect" : [ 274.0, 119.0, 78.998055, 17.0 ],
 									"#triggerall" : 0,
-									"text" : [ "_set 0 9999999" ],
-									"fontsize" : 10.0,
 									"ftm_objref_conv" : 0,
 									"patching_rect" : [ 274.0, 119.0, 78.998055, 17.0 ],
 									"id" : "obj-27",
-									"#init" : "",
-									"ftm_scope" : 0,
 									"numinlets" : 2,
-									"#untuple" : 0
+									"fontname" : "Verdana"
 								}
 
 							}
 , 							{
 								"box" : 								{
 									"maxclass" : "flonum",
-									"fontname" : "Verdana",
 									"numoutlets" : 2,
+									"outlettype" : [ "float", "bang" ],
+									"htextcolor" : [ 0.870588, 0.870588, 0.870588, 1.0 ],
+									"fontsize" : 10.0,
 									"bgcolor" : [ 0.866667, 0.866667, 0.866667, 1.0 ],
-									"outlettype" : [ "float", "bang" ],
-									"fontsize" : 10.0,
 									"patching_rect" : [ 104.0, 238.0, 56.0, 19.0 ],
+									"triscale" : 0.9,
 									"id" : "obj-28",
-									"htextcolor" : [ 0.870588, 0.870588, 0.870588, 1.0 ],
 									"numinlets" : 1,
-									"triscale" : 0.9
+									"fontname" : "Verdana"
 								}
 
 							}
@@ -828,13 +828,13 @@
 								"box" : 								{
 									"maxclass" : "message",
 									"text" : "duration 1000",
-									"fontname" : "Verdana",
 									"numoutlets" : 1,
 									"outlettype" : [ "" ],
 									"fontsize" : 10.0,
 									"patching_rect" : [ 252.0, 281.0, 79.0, 17.0 ],
 									"id" : "obj-29",
-									"numinlets" : 2
+									"numinlets" : 2,
+									"fontname" : "Verdana"
 								}
 
 							}
@@ -842,13 +842,13 @@
 								"box" : 								{
 									"maxclass" : "message",
 									"text" : "speed 2.",
-									"fontname" : "Verdana",
 									"numoutlets" : 1,
 									"outlettype" : [ "" ],
 									"fontsize" : 10.0,
 									"patching_rect" : [ 252.0, 262.0, 52.0, 17.0 ],
 									"id" : "obj-30",
-									"numinlets" : 2
+									"numinlets" : 2,
+									"fontname" : "Verdana"
 								}
 
 							}
@@ -856,13 +856,13 @@
 								"box" : 								{
 									"maxclass" : "message",
 									"text" : "pause",
-									"fontname" : "Verdana",
 									"numoutlets" : 1,
 									"outlettype" : [ "" ],
 									"fontsize" : 10.0,
 									"patching_rect" : [ 50.0, 192.0, 40.0, 17.0 ],
 									"id" : "obj-31",
-									"numinlets" : 2
+									"numinlets" : 2,
+									"fontname" : "Verdana"
 								}
 
 							}
@@ -870,13 +870,13 @@
 								"box" : 								{
 									"maxclass" : "message",
 									"text" : "locate 300.",
-									"fontname" : "Verdana",
 									"numoutlets" : 1,
 									"outlettype" : [ "" ],
 									"fontsize" : 10.0,
 									"patching_rect" : [ 50.0, 100.0, 67.0, 17.0 ],
 									"id" : "obj-32",
-									"numinlets" : 2
+									"numinlets" : 2,
+									"fontname" : "Verdana"
 								}
 
 							}
@@ -884,34 +884,34 @@
 								"box" : 								{
 									"maxclass" : "message",
 									"text" : "sync $1",
-									"fontname" : "Verdana",
 									"numoutlets" : 1,
 									"outlettype" : [ "" ],
 									"fontsize" : 10.0,
 									"patching_rect" : [ 50.0, 238.0, 49.0, 17.0 ],
 									"id" : "obj-33",
-									"numinlets" : 2
+									"numinlets" : 2,
+									"fontname" : "Verdana"
 								}
 
 							}
 , 							{
 								"box" : 								{
 									"maxclass" : "ftm.mess",
-									"fontname" : "Verdana",
+									"#init" : "",
 									"numoutlets" : 1,
+									"ftm_scope" : 0,
+									"outlettype" : [ "" ],
+									"fontsize" : 10.0,
+									"text" : [ "_set $play.seq 500 1500 1." ],
 									"#loadbang" : 0,
-									"outlettype" : [ "" ],
+									"#untuple" : 0,
 									"presentation_rect" : [ 274.0, 100.0, 136.952179, 17.0 ],
 									"#triggerall" : 0,
-									"text" : [ "_set $play.seq 500 1500 1." ],
-									"fontsize" : 10.0,
 									"ftm_objref_conv" : 0,
 									"patching_rect" : [ 274.0, 100.0, 136.952179, 17.0 ],
 									"id" : "obj-40",
-									"#init" : "",
-									"ftm_scope" : 0,
 									"numinlets" : 2,
-									"#untuple" : 0
+									"fontname" : "Verdana"
 								}
 
 							}
@@ -919,13 +919,13 @@
 								"box" : 								{
 									"maxclass" : "message",
 									"text" : "loop",
-									"fontname" : "Verdana",
 									"numoutlets" : 1,
 									"outlettype" : [ "" ],
 									"fontsize" : 10.0,
 									"patching_rect" : [ 50.0, 165.0, 32.5, 17.0 ],
 									"id" : "obj-41",
-									"numinlets" : 2
+									"numinlets" : 2,
+									"fontname" : "Verdana"
 								}
 
 							}
@@ -944,12 +944,12 @@
 								"box" : 								{
 									"maxclass" : "comment",
 									"text" : "advance to gven time (output all events on the way)",
-									"fontname" : "Verdana",
 									"numoutlets" : 0,
 									"fontsize" : 10.0,
 									"patching_rect" : [ 326.0, 238.0, 274.0, 19.0 ],
 									"id" : "obj-54",
-									"numinlets" : 1
+									"numinlets" : 1,
+									"fontname" : "Verdana"
 								}
 
 							}
@@ -957,12 +957,12 @@
 								"box" : 								{
 									"maxclass" : "comment",
 									"text" : "locate halted at given time",
-									"fontname" : "Verdana",
 									"numoutlets" : 0,
 									"fontsize" : 10.0,
 									"patching_rect" : [ 119.0, 101.0, 143.0, 19.0 ],
 									"id" : "obj-55",
-									"numinlets" : 1
+									"numinlets" : 1,
+									"fontname" : "Verdana"
 								}
 
 							}
@@ -970,12 +970,12 @@
 								"box" : 								{
 									"maxclass" : "comment",
 									"text" : "loop current segment",
-									"fontname" : "Verdana",
 									"numoutlets" : 0,
 									"fontsize" : 10.0,
 									"patching_rect" : [ 85.0, 166.0, 116.0, 19.0 ],
 									"id" : "obj-57",
-									"numinlets" : 1
+									"numinlets" : 1,
+									"fontname" : "Verdana"
 								}
 
 							}
@@ -983,12 +983,12 @@
 								"box" : 								{
 									"maxclass" : "comment",
 									"text" : "stop playing and reset",
-									"fontname" : "Verdana",
 									"numoutlets" : 0,
 									"fontsize" : 10.0,
 									"patching_rect" : [ 86.0, 212.0, 121.0, 19.0 ],
 									"id" : "obj-58",
-									"numinlets" : 1
+									"numinlets" : 1,
+									"fontname" : "Verdana"
 								}
 
 							}
@@ -996,12 +996,12 @@
 								"box" : 								{
 									"maxclass" : "comment",
 									"text" : "halt playing",
-									"fontname" : "Verdana",
 									"numoutlets" : 0,
 									"fontsize" : 10.0,
 									"patching_rect" : [ 93.0, 193.0, 67.0, 19.0 ],
 									"id" : "obj-59",
-									"numinlets" : 1
+									"numinlets" : 1,
+									"fontname" : "Verdana"
 								}
 
 							}
@@ -1009,12 +1009,12 @@
 								"box" : 								{
 									"maxclass" : "comment",
 									"text" : "play current segment straight",
-									"fontname" : "Verdana",
 									"numoutlets" : 0,
 									"fontsize" : 10.0,
 									"patching_rect" : [ 67.0, 292.0, 158.0, 19.0 ],
 									"id" : "obj-60",
-									"numinlets" : 1
+									"numinlets" : 1,
+									"fontname" : "Verdana"
 								}
 
 							}
@@ -1023,12 +1023,12 @@
 									"maxclass" : "comment",
 									"text" : "note that setting a new track stops and resets the player (play and loop start from beginning)",
 									"linecount" : 2,
-									"fontname" : "Verdana",
 									"numoutlets" : 0,
 									"fontsize" : 10.0,
 									"patching_rect" : [ 277.0, 196.0, 266.0, 31.0 ],
 									"id" : "obj-62",
-									"numinlets" : 1
+									"numinlets" : 1,
+									"fontname" : "Verdana"
 								}
 
 							}
@@ -1046,25 +1046,106 @@
  ],
 						"lines" : [ 							{
 								"patchline" : 								{
-									"source" : [ "obj-9", 0 ],
-									"destination" : [ "obj-28", 0 ],
-									"hidden" : 1,
+									"source" : [ "obj-26", 0 ],
+									"destination" : [ "obj-114", 0 ],
+									"hidden" : 0,
 									"midpoints" : [  ]
 								}
 
 							}
 , 							{
 								"patchline" : 								{
-									"source" : [ "obj-28", 0 ],
-									"destination" : [ "obj-33", 0 ],
-									"hidden" : 1,
+									"source" : [ "obj-27", 0 ],
+									"destination" : [ "obj-114", 0 ],
+									"hidden" : 0,
 									"midpoints" : [  ]
 								}
 
 							}
 , 							{
 								"patchline" : 								{
-									"source" : [ "obj-32", 0 ],
+									"source" : [ "obj-40", 0 ],
+									"destination" : [ "obj-114", 0 ],
+									"hidden" : 0,
+									"midpoints" : [  ]
+								}
+
+							}
+, 							{
+								"patchline" : 								{
+									"source" : [ "obj-29", 0 ],
+									"destination" : [ "obj-114", 0 ],
+									"hidden" : 0,
+									"midpoints" : [  ]
+								}
+
+							}
+, 							{
+								"patchline" : 								{
+									"source" : [ "obj-30", 0 ],
+									"destination" : [ "obj-114", 0 ],
+									"hidden" : 0,
+									"midpoints" : [  ]
+								}
+
+							}
+, 							{
+								"patchline" : 								{
+									"source" : [ "obj-4", 0 ],
+									"destination" : [ "obj-114", 0 ],
+									"hidden" : 0,
+									"midpoints" : [  ]
+								}
+
+							}
+, 							{
+								"patchline" : 								{
+									"source" : [ "obj-6", 0 ],
+									"destination" : [ "obj-114", 0 ],
+									"hidden" : 0,
+									"midpoints" : [  ]
+								}
+
+							}
+, 							{
+								"patchline" : 								{
+									"source" : [ "obj-50", 0 ],
+									"destination" : [ "obj-114", 0 ],
+									"hidden" : 0,
+									"midpoints" : [  ]
+								}
+
+							}
+, 							{
+								"patchline" : 								{
+									"source" : [ "obj-11", 0 ],
+									"destination" : [ "obj-114", 0 ],
+									"hidden" : 0,
+									"midpoints" : [  ]
+								}
+
+							}
+, 							{
+								"patchline" : 								{
+									"source" : [ "obj-33", 0 ],
+									"destination" : [ "obj-114", 0 ],
+									"hidden" : 0,
+									"midpoints" : [  ]
+								}
+
+							}
+, 							{
+								"patchline" : 								{
+									"source" : [ "obj-31", 0 ],
+									"destination" : [ "obj-114", 0 ],
+									"hidden" : 0,
+									"midpoints" : [  ]
+								}
+
+							}
+, 							{
+								"patchline" : 								{
+									"source" : [ "obj-41", 0 ],
 									"destination" : [ "obj-114", 0 ],
 									"hidden" : 0,
 									"midpoints" : [  ]
@@ -1082,7 +1163,7 @@
 							}
 , 							{
 								"patchline" : 								{
-									"source" : [ "obj-41", 0 ],
+									"source" : [ "obj-32", 0 ],
 									"destination" : [ "obj-114", 0 ],
 									"hidden" : 0,
 									"midpoints" : [  ]
@@ -1091,99 +1172,18 @@
 							}
 , 							{
 								"patchline" : 								{
-									"source" : [ "obj-31", 0 ],
-									"destination" : [ "obj-114", 0 ],
-									"hidden" : 0,
+									"source" : [ "obj-28", 0 ],
+									"destination" : [ "obj-33", 0 ],
+									"hidden" : 1,
 									"midpoints" : [  ]
 								}
 
 							}
 , 							{
 								"patchline" : 								{
-									"source" : [ "obj-33", 0 ],
-									"destination" : [ "obj-114", 0 ],
-									"hidden" : 0,
-									"midpoints" : [  ]
-								}
-
-							}
-, 							{
-								"patchline" : 								{
-									"source" : [ "obj-11", 0 ],
-									"destination" : [ "obj-114", 0 ],
-									"hidden" : 0,
-									"midpoints" : [  ]
-								}
-
-							}
-, 							{
-								"patchline" : 								{
-									"source" : [ "obj-50", 0 ],
-									"destination" : [ "obj-114", 0 ],
-									"hidden" : 0,
-									"midpoints" : [  ]
-								}
-
-							}
-, 							{
-								"patchline" : 								{
-									"source" : [ "obj-6", 0 ],
-									"destination" : [ "obj-114", 0 ],
-									"hidden" : 0,
-									"midpoints" : [  ]
-								}
-
-							}
-, 							{
-								"patchline" : 								{
-									"source" : [ "obj-4", 0 ],
-									"destination" : [ "obj-114", 0 ],
-									"hidden" : 0,
-									"midpoints" : [  ]
-								}
-
-							}
-, 							{
-								"patchline" : 								{
-									"source" : [ "obj-30", 0 ],
-									"destination" : [ "obj-114", 0 ],
-									"hidden" : 0,
-									"midpoints" : [  ]
-								}
-
-							}
-, 							{
-								"patchline" : 								{
-									"source" : [ "obj-29", 0 ],
-									"destination" : [ "obj-114", 0 ],
-									"hidden" : 0,
-									"midpoints" : [  ]
-								}
-
-							}
-, 							{
-								"patchline" : 								{
-									"source" : [ "obj-40", 0 ],
-									"destination" : [ "obj-114", 0 ],
-									"hidden" : 0,
-									"midpoints" : [  ]
-								}
-
-							}
-, 							{
-								"patchline" : 								{
-									"source" : [ "obj-27", 0 ],
-									"destination" : [ "obj-114", 0 ],
-									"hidden" : 0,
-									"midpoints" : [  ]
-								}
-
-							}
-, 							{
-								"patchline" : 								{
-									"source" : [ "obj-26", 0 ],
-									"destination" : [ "obj-114", 0 ],
-									"hidden" : 0,
+									"source" : [ "obj-9", 0 ],
+									"destination" : [ "obj-28", 0 ],
+									"hidden" : 1,
 									"midpoints" : [  ]
 								}
 
@@ -1192,13 +1192,13 @@
 					}
 ,
 					"saved_object_attributes" : 					{
-						"fontname" : "Arial",
-						"default_fontsize" : 12.0,
+						"globalpatchername" : "",
 						"fontface" : 0,
 						"fontsize" : 12.0,
 						"default_fontface" : 0,
 						"default_fontname" : "Arial",
-						"globalpatchername" : ""
+						"fontname" : "Arial",
+						"default_fontsize" : 12.0
 					}
 
 				}
@@ -1208,15 +1208,15 @@
 				"box" : 				{
 					"maxclass" : "message",
 					"text" : "open",
-					"fontname" : "Verdana",
 					"numoutlets" : 1,
 					"outlettype" : [ "" ],
-					"presentation_rect" : [ 200.0, 172.0, 35.0, 17.0 ],
 					"fontsize" : 10.0,
+					"presentation_rect" : [ 65.0, 156.0, 35.0, 17.0 ],
 					"patching_rect" : [ 320.0, 23.0, 35.0, 17.0 ],
 					"presentation" : 1,
 					"id" : "obj-113",
-					"numinlets" : 2
+					"numinlets" : 2,
+					"fontname" : "Verdana"
 				}
 
 			}
@@ -1224,13 +1224,13 @@
 				"box" : 				{
 					"maxclass" : "message",
 					"text" : "0",
-					"fontname" : "Verdana",
 					"numoutlets" : 1,
 					"outlettype" : [ "" ],
 					"fontsize" : 10.0,
 					"patching_rect" : [ 281.0, 23.0, 32.5, 17.0 ],
 					"id" : "obj-110",
-					"numinlets" : 2
+					"numinlets" : 2,
+					"fontname" : "Verdana"
 				}
 
 			}
@@ -1238,15 +1238,15 @@
 				"box" : 				{
 					"maxclass" : "message",
 					"text" : "1",
-					"fontname" : "Verdana",
 					"numoutlets" : 1,
 					"outlettype" : [ "" ],
-					"presentation_rect" : [ 199.0, 132.0, 32.5, 17.0 ],
 					"fontsize" : 10.0,
+					"presentation_rect" : [ 26.0, 156.0, 32.5, 17.0 ],
 					"patching_rect" : [ 240.0, 23.0, 32.5, 17.0 ],
 					"presentation" : 1,
 					"id" : "obj-105",
-					"numinlets" : 2
+					"numinlets" : 2,
+					"fontname" : "Verdana"
 				}
 
 			}
@@ -1254,13 +1254,13 @@
 				"box" : 				{
 					"maxclass" : "newobj",
 					"text" : "sfplay~ 2",
-					"fontname" : "Verdana",
 					"numoutlets" : 3,
 					"outlettype" : [ "signal", "signal", "bang" ],
 					"fontsize" : 10.0,
 					"patching_rect" : [ 230.0, 46.0, 58.0, 19.0 ],
 					"id" : "obj-65",
 					"numinlets" : 2,
+					"fontname" : "Verdana",
 					"save" : [ "#N", "sfplay~", "", 2, 120960, 0, "", ";" ]
 				}
 
@@ -1270,7 +1270,7 @@
 					"maxclass" : "toggle",
 					"numoutlets" : 1,
 					"outlettype" : [ "int" ],
-					"presentation_rect" : [ 21.0, 186.0, 20.0, 20.0 ],
+					"presentation_rect" : [ 126.0, 152.0, 20.0, 20.0 ],
 					"patching_rect" : [ 198.0, 688.0, 20.0, 20.0 ],
 					"presentation" : 1,
 					"id" : "obj-109",
@@ -1294,15 +1294,15 @@
 				"box" : 				{
 					"maxclass" : "message",
 					"text" : "60 100",
-					"fontname" : "Verdana",
 					"numoutlets" : 1,
 					"outlettype" : [ "" ],
-					"presentation_rect" : [ 24.0, 152.0, 46.0, 17.0 ],
 					"fontsize" : 10.0,
+					"presentation_rect" : [ 404.0, 292.0, 46.0, 17.0 ],
 					"patching_rect" : [ 50.0, 751.0, 46.0, 17.0 ],
 					"presentation" : 1,
 					"id" : "obj-106",
-					"numinlets" : 2
+					"numinlets" : 2,
+					"fontname" : "Verdana"
 				}
 
 			}
@@ -1334,13 +1334,13 @@
 				"box" : 				{
 					"maxclass" : "message",
 					"text" : "0",
-					"fontname" : "Verdana",
 					"numoutlets" : 1,
 					"outlettype" : [ "" ],
 					"fontsize" : 10.0,
 					"patching_rect" : [ 167.0, 719.0, 32.5, 17.0 ],
 					"id" : "obj-103",
-					"numinlets" : 2
+					"numinlets" : 2,
+					"fontname" : "Verdana"
 				}
 
 			}
@@ -1348,13 +1348,13 @@
 				"box" : 				{
 					"maxclass" : "newobj",
 					"text" : "gate",
-					"fontname" : "Verdana",
 					"numoutlets" : 1,
 					"outlettype" : [ "" ],
 					"fontsize" : 10.0,
 					"patching_rect" : [ 169.0, 776.0, 33.0, 19.0 ],
 					"id" : "obj-100",
-					"numinlets" : 2
+					"numinlets" : 2,
+					"fontname" : "Verdana"
 				}
 
 			}
@@ -1363,7 +1363,7 @@
 					"maxclass" : "toggle",
 					"numoutlets" : 1,
 					"outlettype" : [ "int" ],
-					"presentation_rect" : [ 162.0, 21.0, 20.0, 20.0 ],
+					"presentation_rect" : [ 153.0, 23.0, 20.0, 20.0 ],
 					"patching_rect" : [ 173.0, 745.0, 21.0, 21.0 ],
 					"presentation" : 1,
 					"id" : "obj-90",
@@ -1375,13 +1375,13 @@
 				"box" : 				{
 					"maxclass" : "newobj",
 					"text" : "zl slice 1",
-					"fontname" : "Verdana",
 					"numoutlets" : 2,
 					"outlettype" : [ "", "" ],
 					"fontsize" : 10.0,
 					"patching_rect" : [ 90.0, 562.0, 54.0, 19.0 ],
 					"id" : "obj-82",
-					"numinlets" : 2
+					"numinlets" : 2,
+					"fontname" : "Verdana"
 				}
 
 			}
@@ -1389,14 +1389,14 @@
 				"box" : 				{
 					"maxclass" : "comment",
 					"text" : "freq",
-					"fontname" : "Verdana",
 					"numoutlets" : 0,
+					"fontsize" : 10.0,
 					"presentation_rect" : [ 407.0, 70.0, 43.0, 19.0 ],
-					"fontsize" : 10.0,
 					"patching_rect" : [ 684.0, 537.0, 43.0, 19.0 ],
 					"presentation" : 1,
 					"id" : "obj-101",
-					"numinlets" : 1
+					"numinlets" : 1,
+					"fontname" : "Verdana"
 				}
 
 			}
@@ -1404,28 +1404,28 @@
 				"box" : 				{
 					"maxclass" : "newobj",
 					"text" : "loadmess 0.05",
-					"fontname" : "Verdana",
 					"numoutlets" : 1,
 					"outlettype" : [ "" ],
 					"fontsize" : 10.0,
 					"patching_rect" : [ 633.0, 503.0, 84.0, 19.0 ],
 					"id" : "obj-98",
-					"numinlets" : 1
+					"numinlets" : 1,
+					"fontname" : "Verdana"
 				}
 
 			}
 , 			{
 				"box" : 				{
 					"maxclass" : "flonum",
-					"fontname" : "Verdana",
 					"numoutlets" : 2,
 					"outlettype" : [ "float", "bang" ],
+					"fontsize" : 10.0,
 					"presentation_rect" : [ 350.0, 70.0, 50.0, 19.0 ],
-					"fontsize" : 10.0,
 					"patching_rect" : [ 626.0, 537.0, 50.0, 19.0 ],
 					"presentation" : 1,
 					"id" : "obj-92",
-					"numinlets" : 1
+					"numinlets" : 1,
+					"fontname" : "Verdana"
 				}
 
 			}
@@ -1433,13 +1433,13 @@
 				"box" : 				{
 					"maxclass" : "newobj",
 					"text" : "loadmess 0.05",
-					"fontname" : "Verdana",
 					"numoutlets" : 1,
 					"outlettype" : [ "" ],
 					"fontsize" : 10.0,
 					"patching_rect" : [ 543.0, 502.0, 84.0, 19.0 ],
 					"id" : "obj-88",
-					"numinlets" : 1
+					"numinlets" : 1,
+					"fontname" : "Verdana"
 				}
 
 			}
@@ -1447,44 +1447,44 @@
 				"box" : 				{
 					"maxclass" : "comment",
 					"text" : "noise range",
-					"fontname" : "Verdana",
 					"numoutlets" : 0,
+					"fontsize" : 10.0,
 					"presentation_rect" : [ 406.0, 45.0, 73.0, 19.0 ],
-					"fontsize" : 10.0,
 					"patching_rect" : [ 476.0, 528.0, 98.0, 19.0 ],
 					"presentation" : 1,
 					"id" : "obj-84",
-					"numinlets" : 1
+					"numinlets" : 1,
+					"fontname" : "Verdana"
 				}
 
 			}
 , 			{
 				"box" : 				{
 					"maxclass" : "flonum",
-					"fontname" : "Verdana",
 					"numoutlets" : 2,
 					"outlettype" : [ "float", "bang" ],
+					"fontsize" : 10.0,
 					"presentation_rect" : [ 350.0, 45.0, 50.0, 19.0 ],
-					"fontsize" : 10.0,
 					"patching_rect" : [ 544.0, 527.0, 50.0, 19.0 ],
 					"presentation" : 1,
 					"id" : "obj-81",
-					"numinlets" : 1
+					"numinlets" : 1,
+					"fontname" : "Verdana"
 				}
 
 			}
 , 			{
 				"box" : 				{
 					"maxclass" : "flonum",
-					"fontname" : "Verdana",
 					"numoutlets" : 2,
 					"outlettype" : [ "float", "bang" ],
+					"fontsize" : 12.0,
 					"presentation_rect" : [ 270.0, 54.0, 57.0, 21.0 ],
-					"fontsize" : 12.0,
 					"patching_rect" : [ 530.0, 667.0, 57.0, 21.0 ],
 					"presentation" : 1,
 					"id" : "obj-99",
-					"numinlets" : 1
+					"numinlets" : 1,
+					"fontname" : "Verdana"
 				}
 
 			}
@@ -1497,8 +1497,8 @@
 					"patching_rect" : [ 135.0, 619.0, 45.0, 45.0 ],
 					"presentation" : 1,
 					"id" : "obj-94",
-					"local" : 1,
-					"numinlets" : 2
+					"numinlets" : 2,
+					"local" : 1
 				}
 
 			}
@@ -1507,10 +1507,10 @@
 					"maxclass" : "panel",
 					"varname" : "startwinwdow_panel",
 					"numoutlets" : 0,
+					"bordercolor" : [ 0.392157, 0.792157, 0.117647, 1.0 ],
+					"border" : 2,
+					"presentation_rect" : [ 13.0, 120.0, 205.0, 57.0 ],
 					"bgcolor" : [ 1.0, 1.0, 1.0, 1.0 ],
-					"border" : 2,
-					"bordercolor" : [ 0.392157, 0.792157, 0.117647, 1.0 ],
-					"presentation_rect" : [ 19.0, 123.0, 100.0, 55.0 ],
 					"patching_rect" : [ 87.0, 614.0, 100.0, 55.0 ],
 					"presentation" : 1,
 					"id" : "obj-95",
@@ -1535,15 +1535,15 @@
 				"box" : 				{
 					"maxclass" : "message",
 					"text" : "59 100 18600.072266",
-					"fontname" : "Verdana",
 					"numoutlets" : 1,
 					"outlettype" : [ "" ],
-					"presentation_rect" : [ 20.0, 239.0, 196.0, 17.0 ],
 					"fontsize" : 10.0,
+					"presentation_rect" : [ 17.0, 181.0, 196.0, 17.0 ],
 					"patching_rect" : [ 256.0, 729.0, 196.0, 17.0 ],
 					"presentation" : 1,
 					"id" : "obj-85",
-					"numinlets" : 2
+					"numinlets" : 2,
+					"fontname" : "Verdana"
 				}
 
 			}
@@ -1551,13 +1551,13 @@
 				"box" : 				{
 					"maxclass" : "newobj",
 					"text" : "zl join",
-					"fontname" : "Verdana",
 					"numoutlets" : 2,
 					"outlettype" : [ "", "" ],
 					"fontsize" : 10.0,
 					"patching_rect" : [ 247.0, 675.0, 41.0, 19.0 ],
 					"id" : "obj-83",
-					"numinlets" : 2
+					"numinlets" : 2,
+					"fontname" : "Verdana"
 				}
 
 			}
@@ -1565,13 +1565,13 @@
 				"box" : 				{
 					"maxclass" : "newobj",
 					"text" : "- 0.",
-					"fontname" : "Verdana",
 					"numoutlets" : 1,
 					"outlettype" : [ "float" ],
 					"fontsize" : 10.0,
 					"patching_rect" : [ 261.0, 644.0, 32.5, 19.0 ],
 					"id" : "obj-80",
-					"numinlets" : 2
+					"numinlets" : 2,
+					"fontname" : "Verdana"
 				}
 
 			}
@@ -1579,13 +1579,13 @@
 				"box" : 				{
 					"maxclass" : "newobj",
 					"text" : "t l b",
-					"fontname" : "Verdana",
 					"numoutlets" : 2,
 					"outlettype" : [ "", "bang" ],
 					"fontsize" : 10.0,
 					"patching_rect" : [ 247.0, 586.0, 32.5, 19.0 ],
 					"id" : "obj-79",
-					"numinlets" : 1
+					"numinlets" : 1,
+					"fontname" : "Verdana"
 				}
 
 			}
@@ -1593,13 +1593,13 @@
 				"box" : 				{
 					"maxclass" : "newobj",
 					"text" : "cpuclock",
-					"fontname" : "Verdana",
 					"numoutlets" : 1,
 					"outlettype" : [ "float" ],
 					"fontsize" : 10.0,
 					"patching_rect" : [ 328.0, 615.0, 53.0, 19.0 ],
 					"id" : "obj-78",
-					"numinlets" : 1
+					"numinlets" : 1,
+					"fontname" : "Verdana"
 				}
 
 			}
@@ -1607,13 +1607,13 @@
 				"box" : 				{
 					"maxclass" : "newobj",
 					"text" : "cpuclock",
-					"fontname" : "Verdana",
 					"numoutlets" : 1,
 					"outlettype" : [ "float" ],
 					"fontsize" : 10.0,
 					"patching_rect" : [ 261.0, 614.0, 53.0, 19.0 ],
 					"id" : "obj-76",
-					"numinlets" : 1
+					"numinlets" : 1,
+					"fontname" : "Verdana"
 				}
 
 			}
@@ -1632,13 +1632,13 @@
 				"box" : 				{
 					"maxclass" : "message",
 					"text" : "/stopplaying",
-					"fontname" : "Verdana",
 					"numoutlets" : 1,
 					"outlettype" : [ "" ],
 					"fontsize" : 10.0,
 					"patching_rect" : [ 614.0, 378.0, 73.0, 17.0 ],
 					"id" : "obj-72",
-					"numinlets" : 2
+					"numinlets" : 2,
+					"fontname" : "Verdana"
 				}
 
 			}
@@ -1657,13 +1657,13 @@
 				"box" : 				{
 					"maxclass" : "message",
 					"text" : "/startplaying",
-					"fontname" : "Verdana",
 					"numoutlets" : 1,
 					"outlettype" : [ "" ],
 					"fontsize" : 10.0,
 					"patching_rect" : [ 365.0, 551.0, 75.0, 17.0 ],
 					"id" : "obj-63",
-					"numinlets" : 2
+					"numinlets" : 2,
+					"fontname" : "Verdana"
 				}
 
 			}
@@ -1671,13 +1671,13 @@
 				"box" : 				{
 					"maxclass" : "newobj",
 					"text" : "prepend /midinoteon",
-					"fontname" : "Verdana",
 					"numoutlets" : 1,
 					"outlettype" : [ "" ],
 					"fontsize" : 10.0,
 					"patching_rect" : [ 352.0, 837.0, 116.0, 19.0 ],
 					"id" : "obj-69",
-					"numinlets" : 1
+					"numinlets" : 1,
+					"fontname" : "Verdana"
 				}
 
 			}
@@ -1685,12 +1685,12 @@
 				"box" : 				{
 					"maxclass" : "newobj",
 					"text" : "udpsend 127.0.0.1 12121",
-					"fontname" : "Verdana",
 					"numoutlets" : 0,
 					"fontsize" : 10.0,
 					"patching_rect" : [ 353.0, 860.0, 141.0, 19.0 ],
 					"id" : "obj-68",
-					"numinlets" : 1
+					"numinlets" : 1,
+					"fontname" : "Verdana"
 				}
 
 			}
@@ -1698,15 +1698,15 @@
 				"box" : 				{
 					"maxclass" : "message",
 					"text" : "59 100",
-					"fontname" : "Verdana",
 					"numoutlets" : 1,
 					"outlettype" : [ "" ],
+					"fontsize" : 10.0,
 					"presentation_rect" : [ 455.0, 97.0, 50.0, 17.0 ],
-					"fontsize" : 10.0,
 					"patching_rect" : [ 97.0, 591.0, 50.0, 17.0 ],
 					"presentation" : 1,
 					"id" : "obj-67",
-					"numinlets" : 2
+					"numinlets" : 2,
+					"fontname" : "Verdana"
 				}
 
 			}
@@ -1714,12 +1714,12 @@
 				"box" : 				{
 					"maxclass" : "comment",
 					"text" : "syntax:",
-					"fontname" : "Verdana",
 					"numoutlets" : 0,
 					"fontsize" : 10.0,
 					"patching_rect" : [ 282.0, 382.0, 46.0, 19.0 ],
 					"id" : "obj-2",
-					"numinlets" : 1
+					"numinlets" : 1,
+					"fontname" : "Verdana"
 				}
 
 			}
@@ -1728,12 +1728,12 @@
 					"maxclass" : "comment",
 					"text" : "kill hanging notes when looping",
 					"hidden" : 1,
-					"fontname" : "Verdana",
 					"numoutlets" : 0,
 					"fontsize" : 10.0,
 					"patching_rect" : [ 215.0, 417.0, 168.0, 19.0 ],
 					"id" : "obj-13",
-					"numinlets" : 1
+					"numinlets" : 1,
+					"fontname" : "Verdana"
 				}
 
 			}
@@ -1741,21 +1741,21 @@
 				"box" : 				{
 					"maxclass" : "ftm.object",
 					"text" : "sequence midi",
-					"fontname" : "Verdana",
+					"name" : "play.seq",
+					"editor_interface" : "matrix",
+					"description" : "sequence midi",
 					"numoutlets" : 2,
+					"ftm_scope" : 0,
+					"outlettype" : [ "", "" ],
+					"fontsize" : 12.0,
+					"presentation_rect" : [ 369.0, 807.0, 161.785156, 20.0 ],
 					"scope" : 0,
-					"description" : "sequence midi",
-					"outlettype" : [ "", "" ],
-					"presentation_rect" : [ 369.0, 807.0, 161.785156, 20.0 ],
+					"ftm_objref_conv" : 0,
+					"patching_rect" : [ 369.0, 807.0, 161.785156, 20.0 ],
 					"persistence" : 0,
-					"fontsize" : 12.0,
-					"ftm_objref_conv" : 0,
-					"editor_interface" : "matrix",
-					"patching_rect" : [ 369.0, 807.0, 161.785156, 20.0 ],
 					"id" : "obj-14",
-					"ftm_scope" : 0,
-					"name" : "play.seq",
-					"numinlets" : 1
+					"numinlets" : 1,
+					"fontname" : "Verdana"
 				}
 
 			}
@@ -1763,15 +1763,15 @@
 				"box" : 				{
 					"maxclass" : "message",
 					"text" : "import",
-					"fontname" : "Verdana",
 					"numoutlets" : 1,
 					"outlettype" : [ "" ],
+					"fontsize" : 10.0,
 					"presentation_rect" : [ 15.0, 57.0, 43.0, 17.0 ],
-					"fontsize" : 10.0,
 					"patching_rect" : [ 369.0, 779.0, 43.0, 17.0 ],
 					"presentation" : 1,
 					"id" : "obj-15",
-					"numinlets" : 2
+					"numinlets" : 2,
+					"fontname" : "Verdana"
 				}
 
 			}
@@ -1779,14 +1779,14 @@
 				"box" : 				{
 					"maxclass" : "comment",
 					"text" : "import MIDI file",
-					"fontname" : "Verdana",
 					"numoutlets" : 0,
+					"fontsize" : 10.0,
 					"presentation_rect" : [ 60.0, 56.0, 90.0, 19.0 ],
-					"fontsize" : 10.0,
 					"patching_rect" : [ 414.0, 778.0, 90.0, 19.0 ],
 					"presentation" : 1,
 					"id" : "obj-16",
-					"numinlets" : 1
+					"numinlets" : 1,
+					"fontname" : "Verdana"
 				}
 
 			}
@@ -1794,12 +1794,12 @@
 				"box" : 				{
 					"maxclass" : "comment",
 					"text" : "play an FTM track",
-					"fontname" : "Verdana",
 					"numoutlets" : 0,
 					"fontsize" : 10.0,
 					"patching_rect" : [ 61.0, 57.0, 98.0, 19.0 ],
 					"id" : "obj-17",
-					"numinlets" : 1
+					"numinlets" : 1,
+					"fontname" : "Verdana"
 				}
 
 			}
@@ -1807,12 +1807,12 @@
 				"box" : 				{
 					"maxclass" : "comment",
 					"text" : "ftm.play",
-					"fontname" : "Verdana",
 					"numoutlets" : 0,
 					"fontsize" : 24.0,
 					"patching_rect" : [ 55.0, 24.0, 108.0, 36.0 ],
 					"id" : "obj-18",
-					"numinlets" : 1
+					"numinlets" : 1,
+					"fontname" : "Verdana"
 				}
 
 			}
@@ -1820,12 +1820,12 @@
 				"box" : 				{
 					"maxclass" : "comment",
 					"text" : "FTM basic objects",
-					"fontname" : "Verdana",
 					"numoutlets" : 0,
 					"fontsize" : 10.0,
 					"patching_rect" : [ 49.0, 12.0, 97.0, 19.0 ],
 					"id" : "obj-19",
-					"numinlets" : 1
+					"numinlets" : 1,
+					"fontname" : "Verdana"
 				}
 
 			}
@@ -1844,12 +1844,12 @@
 				"box" : 				{
 					"maxclass" : "comment",
 					"text" : "set segment end",
-					"fontname" : "Verdana",
 					"numoutlets" : 0,
 					"fontsize" : 10.0,
 					"patching_rect" : [ 357.0, 334.0, 93.0, 19.0 ],
 					"id" : "obj-21",
-					"numinlets" : 1
+					"numinlets" : 1,
+					"fontname" : "Verdana"
 				}
 
 			}
@@ -1857,14 +1857,14 @@
 				"box" : 				{
 					"maxclass" : "comment",
 					"text" : "set speed",
-					"fontname" : "Verdana",
 					"numoutlets" : 0,
+					"fontsize" : 10.0,
 					"presentation_rect" : [ 110.0, 85.0, 59.0, 19.0 ],
-					"fontsize" : 10.0,
 					"patching_rect" : [ 671.0, 447.0, 59.0, 19.0 ],
 					"presentation" : 1,
 					"id" : "obj-22",
-					"numinlets" : 1
+					"numinlets" : 1,
+					"fontname" : "Verdana"
 				}
 
 			}
@@ -1873,26 +1873,26 @@
 					"maxclass" : "newobj",
 					"text" : "change 0 -",
 					"hidden" : 1,
-					"fontname" : "Verdana",
 					"numoutlets" : 3,
 					"outlettype" : [ "", "int", "int" ],
 					"fontsize" : 10.0,
 					"patching_rect" : [ 48.0, 418.0, 62.0, 19.0 ],
 					"id" : "obj-34",
-					"numinlets" : 1
+					"numinlets" : 1,
+					"fontname" : "Verdana"
 				}
 
 			}
 , 			{
 				"box" : 				{
 					"maxclass" : "slider",
+					"orientation" : 1,
 					"numoutlets" : 1,
 					"outlettype" : [ "" ],
+					"size" : 1001.0,
 					"patching_rect" : [ 186.0, 334.0, 169.0, 15.0 ],
-					"size" : 1001.0,
 					"id" : "obj-35",
 					"numinlets" : 1,
-					"orientation" : 1,
 					"mult" : 10.0
 				}
 
@@ -1900,13 +1900,13 @@
 , 			{
 				"box" : 				{
 					"maxclass" : "slider",
+					"orientation" : 1,
 					"numoutlets" : 1,
 					"outlettype" : [ "" ],
+					"size" : 1001.0,
 					"patching_rect" : [ 111.0, 314.0, 169.0, 15.0 ],
-					"size" : 1001.0,
 					"id" : "obj-36",
 					"numinlets" : 1,
-					"orientation" : 1,
 					"mult" : 10.0
 				}
 
@@ -1915,15 +1915,15 @@
 				"box" : 				{
 					"maxclass" : "message",
 					"text" : "GM",
-					"fontname" : "Verdana",
 					"numoutlets" : 1,
 					"outlettype" : [ "" ],
+					"fontsize" : 10.0,
 					"presentation_rect" : [ 127.0, 442.0, 32.5, 17.0 ],
-					"fontsize" : 10.0,
 					"patching_rect" : [ 127.0, 442.0, 32.5, 17.0 ],
 					"presentation" : 1,
 					"id" : "obj-37",
-					"numinlets" : 2
+					"numinlets" : 2,
+					"fontname" : "Verdana"
 				}
 
 			}
@@ -1931,15 +1931,15 @@
 				"box" : 				{
 					"maxclass" : "message",
 					"text" : "panic",
-					"fontname" : "Verdana",
 					"numoutlets" : 1,
 					"outlettype" : [ "" ],
+					"fontsize" : 10.0,
 					"presentation_rect" : [ 85.0, 442.0, 37.0, 17.0 ],
-					"fontsize" : 10.0,
 					"patching_rect" : [ 85.0, 442.0, 37.0, 17.0 ],
 					"presentation" : 1,
 					"id" : "obj-38",
-					"numinlets" : 2
+					"numinlets" : 2,
+					"fontname" : "Verdana"
 				}
 
 			}
@@ -1947,47 +1947,47 @@
 				"box" : 				{
 					"maxclass" : "message",
 					"text" : "off",
-					"fontname" : "Verdana",
 					"numoutlets" : 1,
 					"outlettype" : [ "" ],
+					"fontsize" : 10.0,
 					"presentation_rect" : [ 48.0, 442.0, 32.5, 17.0 ],
-					"fontsize" : 10.0,
 					"patching_rect" : [ 48.0, 442.0, 32.5, 17.0 ],
 					"presentation" : 1,
 					"id" : "obj-39",
-					"numinlets" : 2
+					"numinlets" : 2,
+					"fontname" : "Verdana"
 				}
 
 			}
 , 			{
 				"box" : 				{
 					"maxclass" : "flonum",
-					"fontname" : "Verdana",
 					"numoutlets" : 2,
+					"outlettype" : [ "float", "bang" ],
+					"htextcolor" : [ 0.870588, 0.870588, 0.870588, 1.0 ],
+					"fontsize" : 10.0,
 					"bgcolor" : [ 0.866667, 0.866667, 0.866667, 1.0 ],
-					"outlettype" : [ "float", "bang" ],
-					"fontsize" : 10.0,
 					"patching_rect" : [ 186.0, 357.0, 55.0, 19.0 ],
+					"triscale" : 0.9,
 					"id" : "obj-42",
-					"htextcolor" : [ 0.870588, 0.870588, 0.870588, 1.0 ],
 					"numinlets" : 1,
-					"triscale" : 0.9
+					"fontname" : "Verdana"
 				}
 
 			}
 , 			{
 				"box" : 				{
 					"maxclass" : "flonum",
-					"fontname" : "Verdana",
 					"numoutlets" : 2,
+					"outlettype" : [ "float", "bang" ],
+					"htextcolor" : [ 0.870588, 0.870588, 0.870588, 1.0 ],
+					"fontsize" : 10.0,
 					"bgcolor" : [ 0.866667, 0.866667, 0.866667, 1.0 ],
-					"outlettype" : [ "float", "bang" ],
-					"fontsize" : 10.0,
 					"patching_rect" : [ 111.0, 357.0, 55.0, 19.0 ],
+					"triscale" : 0.9,
 					"id" : "obj-43",
-					"htextcolor" : [ 0.870588, 0.870588, 0.870588, 1.0 ],
 					"numinlets" : 1,
-					"triscale" : 0.9
+					"fontname" : "Verdana"
 				}
 
 			}
@@ -1995,12 +1995,12 @@
 				"box" : 				{
 					"maxclass" : "newobj",
 					"text" : "midiout",
-					"fontname" : "Verdana",
 					"numoutlets" : 0,
 					"fontsize" : 10.0,
 					"patching_rect" : [ 36.0, 538.0, 48.0, 19.0 ],
 					"id" : "obj-44",
-					"numinlets" : 1
+					"numinlets" : 1,
+					"fontname" : "Verdana"
 				}
 
 			}
@@ -2008,16 +2008,16 @@
 				"box" : 				{
 					"maxclass" : "newobj",
 					"text" : "ftm.midiunparse",
-					"fontname" : "Verdana",
 					"numoutlets" : 1,
 					"outlettype" : [ "" ],
 					"fontsize" : 10.0,
 					"patching_rect" : [ 36.0, 463.0, 93.0, 19.0 ],
 					"id" : "obj-45",
 					"numinlets" : 1,
+					"fontname" : "Verdana",
 					"saved_object_attributes" : 					{
-						"ftm_objref_conv" : 0,
-						"ftm_scope" : 0
+						"ftm_scope" : 0,
+						"ftm_objref_conv" : 0
 					}
 
 				}
@@ -2027,15 +2027,15 @@
 				"box" : 				{
 					"maxclass" : "message",
 					"text" : "play",
-					"fontname" : "Verdana",
 					"numoutlets" : 1,
 					"outlettype" : [ "" ],
+					"fontsize" : 18.0,
 					"presentation_rect" : [ 25.0, 17.0, 52.0, 26.0 ],
-					"fontsize" : 18.0,
 					"patching_rect" : [ 424.0, 52.0, 52.0, 26.0 ],
 					"presentation" : 1,
 					"id" : "obj-46",
-					"numinlets" : 2
+					"numinlets" : 2,
+					"fontname" : "Verdana"
 				}
 
 			}
@@ -2043,35 +2043,35 @@
 				"box" : 				{
 					"maxclass" : "message",
 					"text" : "1",
-					"fontname" : "Verdana",
 					"numoutlets" : 1,
 					"outlettype" : [ "" ],
+					"fontsize" : 10.0,
 					"presentation_rect" : [ 76.0, 85.0, 32.5, 17.0 ],
-					"fontsize" : 10.0,
 					"patching_rect" : [ 635.0, 447.0, 32.5, 17.0 ],
 					"presentation" : 1,
 					"id" : "obj-47",
-					"numinlets" : 2
+					"numinlets" : 2,
+					"fontname" : "Verdana"
 				}
 
 			}
 , 			{
 				"box" : 				{
 					"maxclass" : "flonum",
-					"fontname" : "Verdana",
 					"numoutlets" : 2,
+					"minimum" : 0.2,
+					"outlettype" : [ "float", "bang" ],
+					"htextcolor" : [ 0.870588, 0.870588, 0.870588, 1.0 ],
+					"fontsize" : 10.0,
 					"maximum" : 4.0,
+					"presentation_rect" : [ 16.0, 85.0, 47.0, 19.0 ],
 					"bgcolor" : [ 0.866667, 0.866667, 0.866667, 1.0 ],
-					"outlettype" : [ "float", "bang" ],
-					"presentation_rect" : [ 16.0, 85.0, 47.0, 19.0 ],
-					"fontsize" : 10.0,
-					"minimum" : 0.2,
 					"patching_rect" : [ 637.0, 470.0, 41.0, 19.0 ],
+					"triscale" : 0.9,
 					"presentation" : 1,
 					"id" : "obj-48",
-					"htextcolor" : [ 0.870588, 0.870588, 0.870588, 1.0 ],
 					"numinlets" : 1,
-					"triscale" : 0.9
+					"fontname" : "Verdana"
 				}
 
 			}
@@ -2079,15 +2079,15 @@
 				"box" : 				{
 					"maxclass" : "message",
 					"text" : "stop",
-					"fontname" : "Verdana",
 					"numoutlets" : 1,
 					"outlettype" : [ "" ],
+					"fontsize" : 18.0,
 					"presentation_rect" : [ 93.0, 19.0, 51.0, 26.0 ],
-					"fontsize" : 18.0,
 					"patching_rect" : [ 539.0, 55.0, 51.0, 26.0 ],
 					"presentation" : 1,
 					"id" : "obj-49",
-					"numinlets" : 2
+					"numinlets" : 2,
+					"fontname" : "Verdana"
 				}
 
 			}
@@ -2105,16 +2105,16 @@
 , 			{
 				"box" : 				{
 					"maxclass" : "flonum",
-					"fontname" : "Verdana",
 					"numoutlets" : 2,
+					"outlettype" : [ "float", "bang" ],
+					"htextcolor" : [ 0.870588, 0.870588, 0.870588, 1.0 ],
+					"fontsize" : 10.0,
 					"bgcolor" : [ 0.866667, 0.866667, 0.866667, 1.0 ],
-					"outlettype" : [ "float", "bang" ],
-					"fontsize" : 10.0,
 					"patching_rect" : [ 149.0, 418.0, 55.0, 19.0 ],
+					"triscale" : 0.9,
 					"id" : "obj-52",
-					"htextcolor" : [ 0.870588, 0.870588, 0.870588, 1.0 ],
 					"numinlets" : 1,
-					"triscale" : 0.9
+					"fontname" : "Verdana"
 				}
 
 			}
@@ -2122,16 +2122,16 @@
 				"box" : 				{
 					"maxclass" : "newobj",
 					"text" : "ftm.play $play.seq",
-					"fontname" : "Verdana",
 					"numoutlets" : 3,
 					"outlettype" : [ "", "", "" ],
 					"fontsize" : 18.0,
 					"patching_rect" : [ 36.0, 380.0, 244.0, 28.0 ],
 					"id" : "obj-53",
 					"numinlets" : 4,
+					"fontname" : "Verdana",
 					"saved_object_attributes" : 					{
-						"ftm_objref_conv" : 0,
-						"ftm_scope" : 2
+						"ftm_scope" : 2,
+						"ftm_objref_conv" : 0
 					}
 
 				}
@@ -2141,12 +2141,12 @@
 				"box" : 				{
 					"maxclass" : "comment",
 					"text" : "set segment (track, begin, end and speed)",
-					"fontname" : "Verdana",
 					"numoutlets" : 0,
 					"fontsize" : 10.0,
 					"patching_rect" : [ 402.0, 91.0, 226.0, 19.0 ],
 					"id" : "obj-56",
-					"numinlets" : 1
+					"numinlets" : 1,
+					"fontname" : "Verdana"
 				}
 
 			}
@@ -2154,11 +2154,27 @@
 				"box" : 				{
 					"maxclass" : "comment",
 					"text" : "set segment beginning",
-					"fontname" : "Verdana",
 					"numoutlets" : 0,
 					"fontsize" : 10.0,
 					"patching_rect" : [ 282.0, 314.0, 123.0, 19.0 ],
 					"id" : "obj-61",
+					"numinlets" : 1,
+					"fontname" : "Verdana"
+				}
+
+			}
+, 			{
+				"box" : 				{
+					"maxclass" : "panel",
+					"varname" : "startwinwdow_panel[1]",
+					"numoutlets" : 0,
+					"bordercolor" : [ 0.392157, 0.792157, 0.117647, 1.0 ],
+					"border" : 2,
+					"presentation_rect" : [ 13.0, 13.0, 167.0, 98.0 ],
+					"bgcolor" : [ 1.0, 1.0, 1.0, 1.0 ],
+					"patching_rect" : [ 102.0, 629.0, 100.0, 55.0 ],
+					"presentation" : 1,
+					"id" : "obj-5",
 					"numinlets" : 1
 				}
 
@@ -2166,8 +2182,278 @@
  ],
 		"lines" : [ 			{
 				"patchline" : 				{
-					"source" : [ "obj-3", 0 ],
-					"destination" : [ "obj-109", 0 ],
+					"source" : [ "obj-4", 0 ],
+					"destination" : [ "obj-1", 0 ],
+					"hidden" : 0,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-1", 0 ],
+					"destination" : [ "obj-44", 0 ],
+					"hidden" : 0,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-45", 0 ],
+					"destination" : [ "obj-1", 1 ],
+					"hidden" : 0,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-65", 1 ],
+					"destination" : [ "obj-94", 1 ],
+					"hidden" : 0,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-65", 0 ],
+					"destination" : [ "obj-94", 0 ],
+					"hidden" : 0,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-110", 0 ],
+					"destination" : [ "obj-65", 0 ],
+					"hidden" : 0,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-105", 0 ],
+					"destination" : [ "obj-65", 0 ],
+					"hidden" : 0,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-113", 0 ],
+					"destination" : [ "obj-65", 0 ],
+					"hidden" : 0,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-70", 0 ],
+					"destination" : [ "obj-105", 0 ],
+					"hidden" : 0,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-79", 1 ],
+					"destination" : [ "obj-9", 0 ],
+					"hidden" : 0,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-81", 0 ],
+					"destination" : [ "obj-9", 1 ],
+					"hidden" : 0,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-48", 0 ],
+					"destination" : [ "obj-9", 2 ],
+					"hidden" : 0,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-93", 0 ],
+					"destination" : [ "obj-9", 3 ],
+					"hidden" : 0,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-92", 0 ],
+					"destination" : [ "obj-9", 4 ],
+					"hidden" : 0,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-107", 1 ],
+					"destination" : [ "obj-69", 0 ],
+					"hidden" : 0,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-79", 0 ],
+					"destination" : [ "obj-83", 0 ],
+					"hidden" : 0,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-109", 0 ],
+					"destination" : [ "obj-107", 0 ],
+					"hidden" : 0,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-107", 0 ],
+					"destination" : [ "obj-100", 1 ],
+					"hidden" : 0,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-83", 0 ],
+					"destination" : [ "obj-107", 1 ],
+					"hidden" : 0,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-104", 0 ],
+					"destination" : [ "obj-90", 0 ],
+					"hidden" : 0,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-104", 0 ],
+					"destination" : [ "obj-106", 0 ],
+					"hidden" : 0,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-103", 0 ],
+					"destination" : [ "obj-90", 0 ],
+					"hidden" : 0,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-46", 0 ],
+					"destination" : [ "obj-103", 0 ],
+					"hidden" : 0,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-100", 0 ],
+					"destination" : [ "obj-69", 0 ],
+					"hidden" : 0,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-90", 0 ],
+					"destination" : [ "obj-100", 0 ],
+					"hidden" : 0,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-82", 1 ],
+					"destination" : [ "obj-67", 1 ],
+					"hidden" : 0,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-45", 0 ],
+					"destination" : [ "obj-82", 0 ],
+					"hidden" : 0,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-98", 0 ],
+					"destination" : [ "obj-92", 0 ],
+					"hidden" : 0,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-88", 0 ],
+					"destination" : [ "obj-81", 0 ],
+					"hidden" : 0,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-49", 0 ],
+					"destination" : [ "obj-71", 0 ],
+					"hidden" : 0,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-72", 0 ],
+					"destination" : [ "obj-68", 0 ],
 					"hidden" : 0,
 					"midpoints" : [  ]
 				}
@@ -2176,7 +2462,7 @@
 , 			{
 				"patchline" : 				{
 					"source" : [ "obj-71", 0 ],
-					"destination" : [ "obj-110", 0 ],
+					"destination" : [ "obj-72", 0 ],
 					"hidden" : 0,
 					"midpoints" : [  ]
 				}
@@ -2184,34 +2470,7 @@
 			}
 , 			{
 				"patchline" : 				{
-					"source" : [ "obj-106", 0 ],
-					"destination" : [ "obj-79", 0 ],
-					"hidden" : 0,
-					"midpoints" : [  ]
-				}
-
-			}
-, 			{
-				"patchline" : 				{
-					"source" : [ "obj-82", 1 ],
-					"destination" : [ "obj-79", 0 ],
-					"hidden" : 0,
-					"midpoints" : [  ]
-				}
-
-			}
-, 			{
-				"patchline" : 				{
-					"source" : [ "obj-136", 0 ],
-					"destination" : [ "obj-137", 0 ],
-					"hidden" : 0,
-					"midpoints" : [  ]
-				}
-
-			}
-, 			{
-				"patchline" : 				{
-					"source" : [ "obj-137", 0 ],
+					"source" : [ "obj-63", 0 ],
 					"destination" : [ "obj-68", 0 ],
 					"hidden" : 0,
 					"midpoints" : [  ]
@@ -2220,8 +2479,8 @@
 			}
 , 			{
 				"patchline" : 				{
-					"source" : [ "obj-138", 0 ],
-					"destination" : [ "obj-136", 0 ],
+					"source" : [ "obj-46", 0 ],
+					"destination" : [ "obj-70", 0 ],
 					"hidden" : 0,
 					"midpoints" : [  ]
 				}
@@ -2229,8 +2488,8 @@
 			}
 , 			{
 				"patchline" : 				{
-					"source" : [ "obj-134", 0 ],
-					"destination" : [ "obj-78", 0 ],
+					"source" : [ "obj-15", 0 ],
+					"destination" : [ "obj-14", 0 ],
 					"hidden" : 0,
 					"midpoints" : [  ]
 				}
@@ -2238,8 +2497,8 @@
 			}
 , 			{
 				"patchline" : 				{
-					"source" : [ "obj-63", 0 ],
-					"destination" : [ "obj-134", 0 ],
+					"source" : [ "obj-53", 2 ],
+					"destination" : [ "obj-51", 0 ],
 					"hidden" : 0,
 					"midpoints" : [  ]
 				}
@@ -2247,8 +2506,17 @@
 			}
 , 			{
 				"patchline" : 				{
-					"source" : [ "obj-130", 0 ],
-					"destination" : [ "obj-63", 0 ],
+					"source" : [ "obj-47", 0 ],
+					"destination" : [ "obj-48", 0 ],
+					"hidden" : 1,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-42", 0 ],
+					"destination" : [ "obj-53", 2 ],
 					"hidden" : 0,
 					"midpoints" : [  ]
 				}
@@ -2256,8 +2524,8 @@
 			}
 , 			{
 				"patchline" : 				{
-					"source" : [ "obj-71", 0 ],
-					"destination" : [ "obj-125", 0 ],
+					"source" : [ "obj-35", 0 ],
+					"destination" : [ "obj-42", 0 ],
 					"hidden" : 0,
 					"midpoints" : [  ]
 				}
@@ -2265,8 +2533,8 @@
 			}
 , 			{
 				"patchline" : 				{
-					"source" : [ "obj-82", 1 ],
-					"destination" : [ "obj-126", 1 ],
+					"source" : [ "obj-53", 1 ],
+					"destination" : [ "obj-52", 0 ],
 					"hidden" : 0,
 					"midpoints" : [  ]
 				}
@@ -2274,8 +2542,8 @@
 			}
 , 			{
 				"patchline" : 				{
-					"source" : [ "obj-125", 0 ],
-					"destination" : [ "obj-132", 0 ],
+					"source" : [ "obj-43", 0 ],
+					"destination" : [ "obj-53", 1 ],
 					"hidden" : 0,
 					"midpoints" : [  ]
 				}
@@ -2283,17 +2551,8 @@
 			}
 , 			{
 				"patchline" : 				{
-					"source" : [ "obj-128", 0 ],
-					"destination" : [ "obj-132", 0 ],
-					"hidden" : 0,
-					"midpoints" : [ 669.5, 343.0, 669.5, 354.0, 651.0, 354.0, 651.0, 245.0, 671.5, 245.0 ]
-				}
-
-			}
-, 			{
-				"patchline" : 				{
-					"source" : [ "obj-130", 0 ],
-					"destination" : [ "obj-128", 0 ],
+					"source" : [ "obj-36", 0 ],
+					"destination" : [ "obj-43", 0 ],
 					"hidden" : 0,
 					"midpoints" : [  ]
 				}
@@ -2301,8 +2560,26 @@
 			}
 , 			{
 				"patchline" : 				{
-					"source" : [ "obj-126", 0 ],
-					"destination" : [ "obj-130", 0 ],
+					"source" : [ "obj-34", 0 ],
+					"destination" : [ "obj-39", 0 ],
+					"hidden" : 1,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-52", 0 ],
+					"destination" : [ "obj-34", 0 ],
+					"hidden" : 1,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-53", 0 ],
+					"destination" : [ "obj-45", 0 ],
 					"hidden" : 0,
 					"midpoints" : [  ]
 				}
@@ -2310,133 +2587,7 @@
 			}
 , 			{
 				"patchline" : 				{
-					"source" : [ "obj-132", 0 ],
-					"destination" : [ "obj-126", 0 ],
-					"hidden" : 0,
-					"midpoints" : [  ]
-				}
-
-			}
-, 			{
-				"patchline" : 				{
-					"source" : [ "obj-123", 0 ],
-					"destination" : [ "obj-125", 0 ],
-					"hidden" : 0,
-					"midpoints" : [  ]
-				}
-
-			}
-, 			{
-				"patchline" : 				{
-					"source" : [ "obj-115", 0 ],
-					"destination" : [ "obj-53", 0 ],
-					"hidden" : 0,
-					"midpoints" : [  ]
-				}
-
-			}
-, 			{
-				"patchline" : 				{
-					"source" : [ "obj-102", 0 ],
-					"destination" : [ "obj-90", 0 ],
-					"hidden" : 0,
-					"midpoints" : [  ]
-				}
-
-			}
-, 			{
-				"patchline" : 				{
-					"source" : [ "obj-100", 0 ],
-					"destination" : [ "obj-102", 0 ],
-					"hidden" : 0,
-					"midpoints" : [  ]
-				}
-
-			}
-, 			{
-				"patchline" : 				{
-					"source" : [ "obj-99", 0 ],
-					"destination" : [ "obj-53", 3 ],
-					"hidden" : 0,
-					"midpoints" : [  ]
-				}
-
-			}
-, 			{
-				"patchline" : 				{
-					"source" : [ "obj-83", 0 ],
-					"destination" : [ "obj-85", 1 ],
-					"hidden" : 0,
-					"midpoints" : [  ]
-				}
-
-			}
-, 			{
-				"patchline" : 				{
-					"source" : [ "obj-80", 0 ],
-					"destination" : [ "obj-83", 1 ],
-					"hidden" : 0,
-					"midpoints" : [  ]
-				}
-
-			}
-, 			{
-				"patchline" : 				{
-					"source" : [ "obj-76", 0 ],
-					"destination" : [ "obj-80", 0 ],
-					"hidden" : 0,
-					"midpoints" : [  ]
-				}
-
-			}
-, 			{
-				"patchline" : 				{
-					"source" : [ "obj-78", 0 ],
-					"destination" : [ "obj-80", 1 ],
-					"hidden" : 0,
-					"midpoints" : [  ]
-				}
-
-			}
-, 			{
-				"patchline" : 				{
-					"source" : [ "obj-79", 1 ],
-					"destination" : [ "obj-76", 0 ],
-					"hidden" : 0,
-					"midpoints" : [  ]
-				}
-
-			}
-, 			{
-				"patchline" : 				{
-					"source" : [ "obj-69", 0 ],
-					"destination" : [ "obj-68", 0 ],
-					"hidden" : 0,
-					"midpoints" : [  ]
-				}
-
-			}
-, 			{
-				"patchline" : 				{
-					"source" : [ "obj-49", 0 ],
-					"destination" : [ "obj-53", 0 ],
-					"hidden" : 1,
-					"midpoints" : [  ]
-				}
-
-			}
-, 			{
-				"patchline" : 				{
-					"source" : [ "obj-46", 0 ],
-					"destination" : [ "obj-53", 0 ],
-					"hidden" : 1,
-					"midpoints" : [  ]
-				}
-
-			}
-, 			{
-				"patchline" : 				{
-					"source" : [ "obj-37", 0 ],
+					"source" : [ "obj-39", 0 ],
 					"destination" : [ "obj-45", 0 ],
 					"hidden" : 1,
 					"midpoints" : [  ]
@@ -2454,7 +2605,7 @@
 			}
 , 			{
 				"patchline" : 				{
-					"source" : [ "obj-39", 0 ],
+					"source" : [ "obj-37", 0 ],
 					"destination" : [ "obj-45", 0 ],
 					"hidden" : 1,
 					"midpoints" : [  ]
@@ -2463,8 +2614,26 @@
 			}
 , 			{
 				"patchline" : 				{
-					"source" : [ "obj-53", 0 ],
-					"destination" : [ "obj-45", 0 ],
+					"source" : [ "obj-46", 0 ],
+					"destination" : [ "obj-53", 0 ],
+					"hidden" : 1,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-49", 0 ],
+					"destination" : [ "obj-53", 0 ],
+					"hidden" : 1,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-69", 0 ],
+					"destination" : [ "obj-68", 0 ],
 					"hidden" : 0,
 					"midpoints" : [  ]
 				}
@@ -2472,26 +2641,8 @@
 			}
 , 			{
 				"patchline" : 				{
-					"source" : [ "obj-52", 0 ],
-					"destination" : [ "obj-34", 0 ],
-					"hidden" : 1,
-					"midpoints" : [  ]
-				}
-
-			}
-, 			{
-				"patchline" : 				{
-					"source" : [ "obj-34", 0 ],
-					"destination" : [ "obj-39", 0 ],
-					"hidden" : 1,
-					"midpoints" : [  ]
-				}
-
-			}
-, 			{
-				"patchline" : 				{
-					"source" : [ "obj-36", 0 ],
-					"destination" : [ "obj-43", 0 ],
+					"source" : [ "obj-79", 1 ],
+					"destination" : [ "obj-76", 0 ],
 					"hidden" : 0,
 					"midpoints" : [  ]
 				}
@@ -2499,8 +2650,8 @@
 			}
 , 			{
 				"patchline" : 				{
-					"source" : [ "obj-43", 0 ],
-					"destination" : [ "obj-53", 1 ],
+					"source" : [ "obj-78", 0 ],
+					"destination" : [ "obj-80", 1 ],
 					"hidden" : 0,
 					"midpoints" : [  ]
 				}
@@ -2508,8 +2659,8 @@
 			}
 , 			{
 				"patchline" : 				{
-					"source" : [ "obj-53", 1 ],
-					"destination" : [ "obj-52", 0 ],
+					"source" : [ "obj-76", 0 ],
+					"destination" : [ "obj-80", 0 ],
 					"hidden" : 0,
 					"midpoints" : [  ]
 				}
@@ -2517,8 +2668,8 @@
 			}
 , 			{
 				"patchline" : 				{
-					"source" : [ "obj-35", 0 ],
-					"destination" : [ "obj-42", 0 ],
+					"source" : [ "obj-80", 0 ],
+					"destination" : [ "obj-83", 1 ],
 					"hidden" : 0,
 					"midpoints" : [  ]
 				}
@@ -2526,8 +2677,8 @@
 			}
 , 			{
 				"patchline" : 				{
-					"source" : [ "obj-42", 0 ],
-					"destination" : [ "obj-53", 2 ],
+					"source" : [ "obj-83", 0 ],
+					"destination" : [ "obj-85", 1 ],
 					"hidden" : 0,
 					"midpoints" : [  ]
 				}
@@ -2535,17 +2686,8 @@
 			}
 , 			{
 				"patchline" : 				{
-					"source" : [ "obj-47", 0 ],
-					"destination" : [ "obj-48", 0 ],
-					"hidden" : 1,
-					"midpoints" : [  ]
-				}
-
-			}
-, 			{
-				"patchline" : 				{
-					"source" : [ "obj-53", 2 ],
-					"destination" : [ "obj-51", 0 ],
+					"source" : [ "obj-99", 0 ],
+					"destination" : [ "obj-53", 3 ],
 					"hidden" : 0,
 					"midpoints" : [  ]
 				}
@@ -2553,8 +2695,8 @@
 			}
 , 			{
 				"patchline" : 				{
-					"source" : [ "obj-15", 0 ],
-					"destination" : [ "obj-14", 0 ],
+					"source" : [ "obj-100", 0 ],
+					"destination" : [ "obj-102", 0 ],
 					"hidden" : 0,
 					"midpoints" : [  ]
 				}
@@ -2562,8 +2704,98 @@
 			}
 , 			{
 				"patchline" : 				{
-					"source" : [ "obj-46", 0 ],
-					"destination" : [ "obj-70", 0 ],
+					"source" : [ "obj-102", 0 ],
+					"destination" : [ "obj-90", 0 ],
+					"hidden" : 0,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-115", 0 ],
+					"destination" : [ "obj-53", 0 ],
+					"hidden" : 0,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-123", 0 ],
+					"destination" : [ "obj-125", 0 ],
+					"hidden" : 0,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-132", 0 ],
+					"destination" : [ "obj-126", 0 ],
+					"hidden" : 0,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-126", 0 ],
+					"destination" : [ "obj-130", 0 ],
+					"hidden" : 0,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-130", 0 ],
+					"destination" : [ "obj-128", 0 ],
+					"hidden" : 0,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-128", 0 ],
+					"destination" : [ "obj-132", 0 ],
+					"hidden" : 0,
+					"midpoints" : [ 669.5, 343.0, 669.5, 354.0, 651.0, 354.0, 651.0, 245.0, 671.5, 245.0 ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-125", 0 ],
+					"destination" : [ "obj-132", 0 ],
+					"hidden" : 0,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-82", 1 ],
+					"destination" : [ "obj-126", 1 ],
+					"hidden" : 0,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-71", 0 ],
+					"destination" : [ "obj-125", 0 ],
+					"hidden" : 0,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-130", 0 ],
+					"destination" : [ "obj-63", 0 ],
 					"hidden" : 0,
 					"midpoints" : [  ]
 				}
@@ -2572,6 +2804,33 @@
 , 			{
 				"patchline" : 				{
 					"source" : [ "obj-63", 0 ],
+					"destination" : [ "obj-134", 0 ],
+					"hidden" : 0,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-134", 0 ],
+					"destination" : [ "obj-78", 0 ],
+					"hidden" : 0,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-138", 0 ],
+					"destination" : [ "obj-136", 0 ],
+					"hidden" : 0,
+					"midpoints" : [  ]
+				}
+
+			}
+, 			{
+				"patchline" : 				{
+					"source" : [ "obj-137", 0 ],
 					"destination" : [ "obj-68", 0 ],
 					"hidden" : 0,
 					"midpoints" : [  ]
@@ -2580,53 +2839,8 @@
 			}
 , 			{
 				"patchline" : 				{
-					"source" : [ "obj-71", 0 ],
-					"destination" : [ "obj-72", 0 ],
-					"hidden" : 0,
-					"midpoints" : [  ]
-				}
-
-			}
-, 			{
-				"patchline" : 				{
-					"source" : [ "obj-72", 0 ],
-					"destination" : [ "obj-68", 0 ],
-					"hidden" : 0,
-					"midpoints" : [  ]
-				}
-
-			}
-, 			{
-				"patchline" : 				{
-					"source" : [ "obj-49", 0 ],
-					"destination" : [ "obj-71", 0 ],
-					"hidden" : 0,
-					"midpoints" : [  ]
-				}
-
-			}
-, 			{
-				"patchline" : 				{
-					"source" : [ "obj-88", 0 ],
-					"destination" : [ "obj-81", 0 ],
-					"hidden" : 0,
-					"midpoints" : [  ]
-				}
-
-			}
-, 			{
-				"patchline" : 				{
-					"source" : [ "obj-98", 0 ],
-					"destination" : [ "obj-92", 0 ],
-					"hidden" : 0,
-					"midpoints" : [  ]
-				}
-
-			}
-, 			{
-				"patchline" : 				{
-					"source" : [ "obj-45", 0 ],
-					"destination" : [ "obj-82", 0 ],
+					"source" : [ "obj-136", 0 ],
+					"destination" : [ "obj-137", 0 ],
 					"hidden" : 0,
 					"midpoints" : [  ]
 				}
@@ -2635,7 +2849,7 @@
 , 			{
 				"patchline" : 				{
 					"source" : [ "obj-82", 1 ],
-					"destination" : [ "obj-67", 1 ],
+					"destination" : [ "obj-79", 0 ],
 					"hidden" : 0,
 					"midpoints" : [  ]
 				}
@@ -2643,8 +2857,8 @@
 			}
 , 			{
 				"patchline" : 				{
-					"source" : [ "obj-90", 0 ],
-					"destination" : [ "obj-100", 0 ],
+					"source" : [ "obj-106", 0 ],
+					"destination" : [ "obj-79", 0 ],
 					"hidden" : 0,
 					"midpoints" : [  ]
 				}
@@ -2652,8 +2866,8 @@
 			}
 , 			{
 				"patchline" : 				{
-					"source" : [ "obj-100", 0 ],
-					"destination" : [ "obj-69", 0 ],
+					"source" : [ "obj-71", 0 ],
+					"destination" : [ "obj-110", 0 ],
 					"hidden" : 0,
 					"midpoints" : [  ]
 				}
@@ -2661,206 +2875,8 @@
 			}
 , 			{
 				"patchline" : 				{
-					"source" : [ "obj-46", 0 ],
-					"destination" : [ "obj-103", 0 ],
-					"hidden" : 0,
-					"midpoints" : [  ]
-				}
-
-			}
-, 			{
-				"patchline" : 				{
-					"source" : [ "obj-103", 0 ],
-					"destination" : [ "obj-90", 0 ],
-					"hidden" : 0,
-					"midpoints" : [  ]
-				}
-
-			}
-, 			{
-				"patchline" : 				{
-					"source" : [ "obj-104", 0 ],
-					"destination" : [ "obj-106", 0 ],
-					"hidden" : 0,
-					"midpoints" : [  ]
-				}
-
-			}
-, 			{
-				"patchline" : 				{
-					"source" : [ "obj-104", 0 ],
-					"destination" : [ "obj-90", 0 ],
-					"hidden" : 0,
-					"midpoints" : [  ]
-				}
-
-			}
-, 			{
-				"patchline" : 				{
-					"source" : [ "obj-83", 0 ],
-					"destination" : [ "obj-107", 1 ],
-					"hidden" : 0,
-					"midpoints" : [  ]
-				}
-
-			}
-, 			{
-				"patchline" : 				{
-					"source" : [ "obj-107", 0 ],
-					"destination" : [ "obj-100", 1 ],
-					"hidden" : 0,
-					"midpoints" : [  ]
-				}
-
-			}
-, 			{
-				"patchline" : 				{
-					"source" : [ "obj-109", 0 ],
-					"destination" : [ "obj-107", 0 ],
-					"hidden" : 0,
-					"midpoints" : [  ]
-				}
-
-			}
-, 			{
-				"patchline" : 				{
-					"source" : [ "obj-79", 0 ],
-					"destination" : [ "obj-83", 0 ],
-					"hidden" : 0,
-					"midpoints" : [  ]
-				}
-
-			}
-, 			{
-				"patchline" : 				{
-					"source" : [ "obj-107", 1 ],
-					"destination" : [ "obj-69", 0 ],
-					"hidden" : 0,
-					"midpoints" : [  ]
-				}
-
-			}
-, 			{
-				"patchline" : 				{
-					"source" : [ "obj-92", 0 ],
-					"destination" : [ "obj-9", 4 ],
-					"hidden" : 0,
-					"midpoints" : [  ]
-				}
-
-			}
-, 			{
-				"patchline" : 				{
-					"source" : [ "obj-93", 0 ],
-					"destination" : [ "obj-9", 3 ],
-					"hidden" : 0,
-					"midpoints" : [  ]
-				}
-
-			}
-, 			{
-				"patchline" : 				{
-					"source" : [ "obj-48", 0 ],
-					"destination" : [ "obj-9", 2 ],
-					"hidden" : 0,
-					"midpoints" : [  ]
-				}
-
-			}
-, 			{
-				"patchline" : 				{
-					"source" : [ "obj-81", 0 ],
-					"destination" : [ "obj-9", 1 ],
-					"hidden" : 0,
-					"midpoints" : [  ]
-				}
-
-			}
-, 			{
-				"patchline" : 				{
-					"source" : [ "obj-79", 1 ],
-					"destination" : [ "obj-9", 0 ],
-					"hidden" : 0,
-					"midpoints" : [  ]
-				}
-
-			}
-, 			{
-				"patchline" : 				{
-					"source" : [ "obj-70", 0 ],
-					"destination" : [ "obj-105", 0 ],
-					"hidden" : 0,
-					"midpoints" : [  ]
-				}
-
-			}
-, 			{
-				"patchline" : 				{
-					"source" : [ "obj-113", 0 ],
-					"destination" : [ "obj-65", 0 ],
-					"hidden" : 0,
-					"midpoints" : [  ]
-				}
-
-			}
-, 			{
-				"patchline" : 				{
-					"source" : [ "obj-105", 0 ],
-					"destination" : [ "obj-65", 0 ],
-					"hidden" : 0,
-					"midpoints" : [  ]
-				}
-
-			}
-, 			{
-				"patchline" : 				{
-					"source" : [ "obj-110", 0 ],
-					"destination" : [ "obj-65", 0 ],
-					"hidden" : 0,
-					"midpoints" : [  ]
-				}
-
-			}
-, 			{
-				"patchline" : 				{
-					"source" : [ "obj-65", 0 ],
-					"destination" : [ "obj-94", 0 ],
-					"hidden" : 0,
-					"midpoints" : [  ]
-				}
-
-			}
-, 			{
-				"patchline" : 				{
-					"source" : [ "obj-65", 1 ],
-					"destination" : [ "obj-94", 1 ],
-					"hidden" : 0,
-					"midpoints" : [  ]
-				}
-
-			}
-, 			{
-				"patchline" : 				{
-					"source" : [ "obj-45", 0 ],
-					"destination" : [ "obj-1", 1 ],
-					"hidden" : 0,
-					"midpoints" : [  ]
-				}
-
-			}
-, 			{
-				"patchline" : 				{
-					"source" : [ "obj-1", 0 ],
-					"destination" : [ "obj-44", 0 ],
-					"hidden" : 0,
-					"midpoints" : [  ]
-				}
-
-			}
-, 			{
-				"patchline" : 				{
-					"source" : [ "obj-4", 0 ],
-					"destination" : [ "obj-1", 0 ],
+					"source" : [ "obj-3", 0 ],
+					"destination" : [ "obj-109", 0 ],
 					"hidden" : 0,
 					"midpoints" : [  ]
 				}
--- a/src/BayesianArrayStructure.cpp	Thu Oct 27 21:30:42 2011 +0100
+++ b/src/BayesianArrayStructure.cpp	Thu Nov 10 17:29:45 2011 +0000
@@ -22,8 +22,8 @@
 	speedPriorValue = 1.0;
 	speedEstimate = speedPriorValue;
 	
-	lastEventTime = ofGetElapsedTimeMillis();
-	
+	lastEventTime = 0;//ofGetElapsedTimeMillis();
+
 	/*
 	 tmpPrior.createVector(240);
 	 tmpPrior.addGaussianShape(100, 40, 1);
@@ -32,6 +32,7 @@
 	 */
 	tmpBestEstimate = 0;
 	crossUpdateTimeThreshold = 100;
+	priorWidth = 30;
 }
 
 BayesianArrayStructure::BayesianArrayStructure(int length){
@@ -94,7 +95,7 @@
 	speedPriorValue = f;
 	int index = relativeSpeedPosterior.getRealTermsAsIndex(speedPriorValue);
 	relativeSpeedPosterior.zero();
-	relativeSpeedPosterior.addGaussianShape(index, 20, 0.8);
+	relativeSpeedPosterior.addGaussianShape(index, priorWidth, 0.8);
 	relativeSpeedPosterior.renormalise();
 	relativeSpeedPosterior.getMaximum();
 	relativeSpeedPrior.copyFromDynamicVector(relativeSpeedPosterior);
@@ -158,8 +159,10 @@
 void BayesianArrayStructure::setStartPlaying(){
 	lastEventTime = 0;//ofGetElapsedTimeMillis();
 	bestEstimate = 0;
-	lastBestEstimateUpdateTime = ofGetElapsedTimeMillis();
-	
+	lastBestEstimateUpdateTime = lastEventTime;
+	//bug somewhere here that prevented offline
+	//ofGetElapsedTimeMillis();//lastEventTime;//
+	printf("start playing - best estimate %f\n", lastBestEstimateUpdateTime);
 	resetArrays();
 }
 
@@ -184,7 +187,10 @@
 	updateCounter = 0;
 	
 	bestEstimate = 0;
-//	lastBestEstimateUpdateTime = ofGetElapsedTimeMillis();
+	lastBestEstimateUpdateTime = ofGetElapsedTimeMillis();
+	//cannot just be zero - offline bug
+	
+	printf("bayes reset arrays - best estimate %f\n", lastBestEstimateUpdateTime);
 	
 	setSpeedPrior(speedPriorValue);
 }
@@ -212,9 +218,15 @@
 	//lastBestEstimateUpdateTime = ofGetElapsedTimeMillis();
 }
 	
-void BayesianArrayStructure::updateBestEstimate(){
+void BayesianArrayStructure::updateBestEstimate(const double& timeDifference){
 //	double timeDiff = ofGetElapsedTimeMillis() - lastEventTime;//
-	double timeDiff = ofGetElapsedTimeMillis() - lastBestEstimateUpdateTime;
+	
+	double timeDiff = timeDifference;
+	
+	//Using timedifferencfe here will make it go wrong. Is time since beginning of playing
+	
+	//if (*realTimeMode)
+		timeDiff = ofGetElapsedTimeMillis() - lastBestEstimateUpdateTime;
 	
 	double speedEstimate = relativeSpeedPosterior.getIntegratedEstimate();
 	speedEstimate = relativeSpeedPosterior.getIndexInRealTerms(speedEstimate);
--- a/src/BayesianArrayStructure.h	Thu Oct 27 21:30:42 2011 +0100
+++ b/src/BayesianArrayStructure.h	Thu Nov 10 17:29:45 2011 +0000
@@ -65,7 +65,7 @@
 	void addTriangularNoiseToSpeedPosterior(const double& std_dev);
 	
 	double bestEstimate;
-	void updateBestEstimate();
+	void updateBestEstimate(const double& timeDifference);
 	double lastBestEstimateUpdateTime;
 	double speedEstimate;
 	
@@ -90,7 +90,8 @@
 	double crossUpdateTimeThreshold;//time after which we do complex update of multiple speeds
 	
 	double speedPriorValue;
-	
+	int priorWidth;
+	bool* realTimeMode;
 	
 };
 #endif
--- a/src/CannamMidiFileLoader.cpp	Thu Oct 27 21:30:42 2011 +0100
+++ b/src/CannamMidiFileLoader.cpp	Thu Nov 10 17:29:45 2011 +0000
@@ -146,12 +146,12 @@
 				switch (j->getMessageType()) {
 						
 					case MIDI_NOTE_ON:
-				/*		cout << t << ": Note: channel " << ch
+						cout << t << ": Note: channel " << ch
 						<< " duration " << j->getDuration()
 						<< " pitch " << j->getPitch()
 						<< " velocity " << j->getVelocity() 
 						<< "event time " << myMidiEvents.getEventTimeMillis(t) << endl;
-				*/
+				
 						
 						if (noteOnIndex == 0){
 							firstNoteTime = myMidiEvents.getEventTimeMillis(t);
--- a/src/midiEventHolder.cpp	Thu Oct 27 21:30:42 2011 +0100
+++ b/src/midiEventHolder.cpp	Thu Nov 10 17:29:45 2011 +0000
@@ -35,6 +35,8 @@
 	bayesStruct.speedDecayWidth = 20;
 	bayesStruct.speedDecayAmount = 10;
 	
+	runningInRealTime = true;
+	
 	speedPriorValue = 1.0;
 	
 	matchWindowWidth = 8000;//window size for matching in ms 
@@ -66,8 +68,8 @@
 	
 	noteArrayIndex = 0;
 	tickLocation = 0;
-	lastPeriodUpdateTime = ofGetElapsedTimeMillis();
-	bayesStruct.lastEventTime = ofGetElapsedTimeMillis();
+	lastPeriodUpdateTime = getTimeNow(0);//ofGetElapsedTimeMillis();
+	bayesStruct.lastEventTime = getTimeNow(0);//ofGetElapsedTimeMillis();
 	numberOfScreensIn = 0;
 //	recordedNoteOnIndex = 0;
 	bayesStruct.setNewDistributionOffsets(0);
@@ -101,9 +103,9 @@
 }
 
 void midiEventHolder::printNotes(){
-	printf("RECORDED MATRIX");
+	printf("RECORDED MATRIX\n");
 	for (int i = 0;i < recordedNoteOnMatrix.size();i++){
-		printf("%i :: %i @ %f\n", recordedNoteOnMatrix[i][0], recordedNoteOnMatrix[i][1], recordedEventTimes[i]);
+		printf("ticktime %i :: pitch %i @ millis %f\n", recordedNoteOnMatrix[i][0], recordedNoteOnMatrix[i][1], recordedEventTimes[i]);
 	}
 }
 
@@ -155,8 +157,8 @@
 	}
 	
 	bayesStruct.updateTmpBestEstimate(timeDifference);// debug - didnt work	bayesStruct.bestEstimate = bayesStruct.tmpBestEstimate;
-	bayesStruct.updateBestEstimate();
-	bayesStruct.lastBestEstimateUpdateTime = ofGetElapsedTimeMillis();
+	bayesStruct.updateBestEstimate(timeDifference);
+	bayesStruct.lastBestEstimateUpdateTime = getTimeNow(timePlayed);
 	
 //	double newMAPestimateTime = bayesStruct.posterior.getIndexInRealTerms(bayesStruct.posterior.MAPestimate);
 	//was offset + bayesStruct.posterior.MAPestimate; but this doesnt include scalar to convert to millis
@@ -217,6 +219,13 @@
 	 
 }
 
+double midiEventHolder::getTimeNow(double eventTime){
+	double timeNow = eventTime;
+	if (runningInRealTime)
+		timeNow = ofGetElapsedTimeMillis();
+	return timeNow;
+}
+
 int midiEventHolder::findLocalMatches(int notePitch){
 
 	//here we find the matches to the new note within appropriate range
@@ -320,6 +329,8 @@
 	matchMatrix.push_back(v);
 	matchConfidence.push_back(d);
 	
+	printf("BEST MATCH TO note %i,time %i is recorded time %i, confidence %0.2f\n", notePitch, startTime, (int) recordedEventTimes[bestMatchIndex], minimumConfidence);
+	
 	return size;
 }
 
@@ -470,7 +481,9 @@
 	//in actual fact if we are changing the speed of the play position 
 	//we will need to update this via the file
 	
-	double timeDifference = ofGetElapsedTimeMillis() - lastPeriodUpdateTime;
+	//actually time since beginning of file i think
+	
+	double timeDifference = ofGetElapsedTimeMillis() - lastPeriodUpdateTime;//elpased - lastperiodupdatetime
 	//this is time diff in milliseconds
 	//then we have 
 	double quarterNoteIntervals = (timeDifference / period);
@@ -479,7 +492,8 @@
 	playPositionInMillis = timeDifference;//based on updating from when we change period
 	//this to be added
 	
-	bayesStruct.updateBestEstimate();
+	if (runningInRealTime)
+	bayesStruct.updateBestEstimate(timeDifference);
 	
 }
 
@@ -522,7 +536,8 @@
 				ofSetColor(255,255,255);
 			}
 			
-			
+			if (tmpIndex == bestMatchIndex)
+				ofSetColor(255,0,0);//best recent match is in red
 			
 			//		 XXX replace ofgetwidth below
 			//if (tmpIndex >= 0 && tmpIndex < size)
@@ -622,7 +637,7 @@
 
 
 void midiEventHolder::setStartPlayingTimes(){
-	lastPeriodUpdateTime = ofGetElapsedTimeMillis();
+	lastPeriodUpdateTime = getTimeNow(0);//ofGetElapsedTimeMillis();
 	startTime = lastPeriodUpdateTime;
 	
 /*	
--- a/src/midiEventHolder.h	Thu Oct 27 21:30:42 2011 +0100
+++ b/src/midiEventHolder.h	Thu Nov 10 17:29:45 2011 +0000
@@ -58,6 +58,9 @@
 	int getLocationFromTicks(double tickPosition);
 	int getLocationFromMillis(double millisPosition);
 	
+	double getTimeNow(double eventTime);
+	bool runningInRealTime;
+	
 	double windowStartTime;
 	
 	//functions for finding match to incoming note
@@ -124,5 +127,6 @@
 	bool confidenceWeightingUsed;
 	
 	double minimumMatchError;//recent best error between observed note and aligned midi file
+	
 };
 #endif
\ No newline at end of file
--- a/src/testApp.cpp	Thu Oct 27 21:30:42 2011 +0100
+++ b/src/testApp.cpp	Thu Nov 10 17:29:45 2011 +0000
@@ -27,7 +27,7 @@
 void testApp::update(){
 	if (playing){
 		midiEvents.updatePlayPosition();
-		midiEvents.bayesStruct.updateBestEstimate();
+	//	midiEvents.bayesStruct.updateBestEstimate();
 	}
 //	drawer.tickLocation+=20;
 	
--- a/workingNotes.rtf	Thu Oct 27 21:30:42 2011 +0100
+++ b/workingNotes.rtf	Thu Nov 10 17:29:45 2011 +0000
@@ -4,10 +4,23 @@
 \paperw11900\paperh16840\margl1440\margr1440\vieww20940\viewh15820\viewkind0
 \pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\ql\qnatural\pardirnatural
 
-\f0\fs24 \cf0 USE ftmplayMidiFile in MaxMSP to send the MIDI notes in via OSC\
+\f0\fs24 \cf0 \
+Note on: send the note playtime. It did calculate this, but is now assumed sent in with the note on message via o/c\
+\
+lastPeriodUpdate is only used at beginning\
+if we use time diff it doesn't work. Beetr try time since start somehow??\
+\
+\
+\
+\
+\
+USE ftmplayMidiFile in MaxMSP to send the MIDI notes in via OSC\
 \
 _ _ ______ __\
 \
+\
+\
+\
 BUGS:\
 When prior and posterior etc are split off the screen, it doesn't find the right indices for them. Are we writing the correct prior vector? constrained limits?\
 \
@@ -48,4 +61,6 @@
 \pard\tx640\pardeftab640\ql\qnatural\pardirnatural
 \cf0 	\cf2 //size, index of match0, index of match1, ....
 \f0\fs24 \cf0 \CocoaLigature1 \
+\
+\
 }
\ No newline at end of file