OSDN Git Service

e029574457f8b926cfb231866d7d9cab1efdce40
[timewavesynth/Timewave_Synthesizer.git] / timewavesynthu7osx.scd
1 (
2 //To run the synth, simply click anywhere within the parenthesis above and press "ctrl - enter" or "cmd - return".
3 //A guide to using the instrument is available by clicking on the "i" button in the bottom right corner of the GUI.
4 //Several lines down, where it says "//VARIABLES YOU MAY WISH TO CHANGE", are variables that you can change for various things,
5 //including key codes for keyboard functions - which is recommended.
6
7 //It is recommended to reboot the interpreter in the "Language" toolbar, or by hightlighting "(thisProcess.platform.recompile);"
8 //and pressing "ctrl - enter" or "cmd - return", before each server boot. Rebooting the interpreter is not needed to
9 //evaluate the code below if the server is booted.
10
11 //This synth is compatible with the Korg NanoKontrol 2
12
13 //(thisProcess.platform.recompile); //Reboot the interpreter before each
14 //server boot by hightlighting "(thisProcess.platform.recompile);" and pressing "ctrl - enter" or "cmd - return”
15
16 ~server_type = 0; // "0" to boot from local server. "1" to boot from the Supernova server.
17
18 ~start_timer = 0;
19 case
20 {~server_type == 0}{
21         if(Server.default.serverRunning == false, {~start_timer = 0;
22                 ({//Boot Supercollider
23                         var mem, blocksize;
24                         w = Window("", Rect(Window.screenBounds.width/2-(340/2),Window.screenBounds.height/2-(340/1.6180339887499/2),340,340/1.6180339887499)).front;
25                         a = StaticText(w, Rect(10, 10, 70, 20));
26                         a.string = "loading...";
27                         Server.quitAll;
28                         Server.default = Server.local;
29                         MIDIIn.connectAll;
30                         AppClock.sched(~start_timer+4,{
31                                 ~icl6 = Server.default;
32                                 mem = 2097152/4;
33                                 blocksize = 64;
34                                 ~icl61 = Server( "server2", NetAddr("127.0.0.1",  57111 ));
35                                 ~icl62 = Server( "server3", NetAddr("127.0.0.1",  57112 ));
36                                 ~icl63 = Server( "server4", NetAddr("127.0.0.1",  57113 ));
37                                 ~icl6.options.memSize = mem;
38                                 ~icl61.options.memSize = mem;
39                                 ~icl62.options.memSize = mem;
40                                 ~icl63.options.memSize = mem;
41                                 ~icl6.options.blockSize = blocksize;
42                                 ~icl61.options.blockSize = blocksize;
43                                 ~icl62.options.blockSize = blocksize;
44                                 ~icl63.options.blockSize = blocksize;
45                                 ~icl6.options_( s.options ).boot;
46                                 ~icl61.options_( s.options ).boot;
47                                 ~icl62.options_( s.options ).boot;
48                                 ~icl63.options_( s.options ).boot;
49                 });}.value);
50         },{~start_timer = (-6)});
51 }
52 {~server_type == 1}{
53         if(Server.default.serverRunning == false, {~start_timer = 0;
54                 (//Boot Supernova
55                         w = Window("", Rect(Window.screenBounds.width/2-(340/2),Window.screenBounds.height/2-(340/1.6180339887499/2),340,340/1.6180339887499)).front;
56                         a = StaticText(w, Rect(10, 10, 70, 20));
57                         a.string = "loading...";
58                         Server.quitAll;
59                         s.boot;
60                         AppClock.sched(7,{
61                                 s.quit;
62                         });
63                         AppClock.sched(11,{
64                                 MIDIIn.connectAll;
65                         });
66                         AppClock.sched(16,{
67                                 Server.supernova;
68                                 s.options.blockSize = 64;
69                                 s.options.memSize = 2097152/4;
70                                 s.boot;
71                         });
72                 );
73         },{~start_timer = (-22)});
74 };
75
76 AppClock.sched((case
77         {~server_type == 0}{~start_timer+8}
78         {~server_type == 1}{~start_timer+24}
79         {(~server_type != 0) or: (~server_type != 1)}{0};), {if((~server_type == 0) or: (~server_type == 1), {w.close;});
80
81                 ({
82                         var point, w, view, view2,
83                         vol = 0.02,mute1,mute2,mute3,mute4,mute5,mute6,mute7,muteall,unmuteall,
84                         g1,g2,g6,g8,g33,g48,g64,g72,g88,gm,ngm1,ngm2,ngm6,set1,set2,menu1,menu2,
85                         ts,sts,str,spaceb,b1,b2,b3,b4,button,button1,info,
86                         n1,n2,n3,n4,n5,n6,n7,n8,keycodeb,
87                         f1,f2,f3,f4,f5,f6,f7,f8,f9,f10,f11,f12,
88                         fp1,fp2,fp3,fp4,fp5,fp6,fp7,fp8,fp9,fp10,fp11,fp12,
89                         fp1b,fp2b,fp3b,fp4b,fp5b,fp6b,fp7b,fp8b,fp9b,fp10b,fp11b,fp12b,
90                         fp1c,fp2c,fp3c,fp4c,fp5c,fp6c,fp7c,fp8c,fp9c,fp10c,fp11c,fp12c,
91                         fp1d,fp2d,fp3d,fp4d,fp5d,fp6d,fp7d,fp8d,fp9d,fp10d,fp11d,fp12d,
92                         fp1e,fp2e,fp3e,fp4e,fp5e,fp6e,fp7e,fp8e,fp9e,fp10e,fp11e,fp12e,
93                         fp1f,fp2f,fp3f,fp4f,fp5f,fp6f,fp7f,fp8f,fp9f,fp10f,fp11f,fp12f,
94                         fp1g,fp2g,fp3g,fp4g,fp5g,fp6g,fp7g,fp8g,fp9g,fp10g,fp11g,fp12g,
95                         fp1h,fp2h,fp3h,fp4h,fp5h,fp6h,fp7h,fp8h,fp9h,fp10h,fp11h,fp12h;
96
97
98
99
100
101
102
103
104                         //VARIABLES YOU MAY WISH TO CHANGE
105
106
107                         // A tuning frequency in hz
108
109                         ~tuning_frequency = 432; //default 432 hz
110
111                         ~freqmap = (
112                                 i = ~tuning_frequency
113                                 / (2 ** (69 / 12)); a = (-1); b = (-1);
114                                 Array.fill(128, {i * (2 ** (((a=a+1) / 12).trunc)) * ( (2 ** (12.reciprocal)) ** ((b=b+1)  % 12));
115                         }));/*~freqmap = (i = 8.0271480262684/*-0.0000000000024*/; ~stepratio = 1.0594630943593; Array.fill(128, { i = i*~stepratio;}));*/
116
117
118                         //base frequency for synth inst
119
120                         ~base_frequency = 128.43436842029; //default 128.43436842029 hz
121
122
123                         //volume
124
125                         ~vol = 0.006; //default 0.006
126                         ~vol1 = ~vol;
127                         ~vol2 = ~vol;
128                         ~vol3 = ~vol;
129                         ~vol4 = ~vol;
130                         ~vol5 = ~vol;
131                         ~vol6 = ~vol;
132                         ~vol7 = ~vol;
133                         ~vol8 = ~vol;
134                         ~vol9 = ~vol;
135                         ~vol10 = ~vol;
136                         ~vol11 = ~vol;
137                         ~vol12 = ~vol;
138
139
140                         //key codes for keyboard functions - either unicode or keycode. to find key codes, see below
141
142                         ~rightarrow_keycode = 124;
143                         ~leftarrow_keycode = 123;
144                         ~uparrow_keycode = 126;
145                         ~downarrow_keycode = 125;
146                         ~enter_unicode = 13;
147                         ~s_unicode = 115;
148                         ~m_unicode = 109;
149                         ~r_unicode = 114;
150                         ~u_unicode = 117;
151                         ~t_unicode = 116;
152                         ~c_unicode = 99;
153                         ~i_unicode = 105;
154                         ~k_unicode = 107;
155                         ~j_unicode = 106;
156                         ~l_unicode = 108;
157                         ~spacebar_unicode = 32;
158                         ~one_unicode = 49;
159                         ~two_unicode = 50;
160                         ~three_unicode = 51;
161                         ~four_unicode = 52;
162                         ~five_unicode = 53;
163                         ~six_unicode = 54;
164                         ~seven_unicode = 55;
165                         ~escape_unicode = 27;
166
167
168                         //To find key codes in post window... Hightlight the function and its parenthesis in red below,
169                         //and press "ctrl - enter" or cmd - return" - then a small window called "test" will pop up...
170                         //Press the "type" button inside of the window, then press anywhere on the keyboard to find
171                         //the key codes in the right-hand side post window. Layout: [unicode, keycode, modifiers]. It is either a unicode
172                         //or a keycode. Do not delete the /* and */ characters, or else the
173                         //program will not run.
174
175                         /*
176
177                         (
178                         var win = Window(\test, Rect(10, 100, 100, 50)),
179                         btn = Button(win, Rect(5, 5, 90, 40)).states_([["type"]]);
180                         btn.keyDownAction =
181                         { arg view, char, modifiers, unicode, keycode;
182                         ["unicode:"+unicode, "keycode:"+keycode, "modifiers:"+modifiers].postln;
183                         };
184                         win.front;
185                         )
186
187                         */
188
189
190                         //gui set frequency ranges - currently set at the lowest and highest notes on a 128 key range using 432 hz A tuning
191                         //you can change the tuning near top
192                         //to insert custom ranges, replace "~freqmap.at()" with a hz frequency
193
194                         ~outmin1 = ~freqmap.at(0);       // 8.0271480262684 hz                       //base frequency of upper set
195                         ~outmax1 = ~freqmap.at(127);     // 12315.783879572 hz                       //high frequency of upper set
196                         ~outmin2 = ~freqmap.at(0)*8;     // (8.0271480262684)*8 hz                   //base frequency of lower set
197                         ~outmax2 = ~freqmap.at(127)/8;   // (12315.783879572)/8 hz;                  //high frequency of lower set
198
199                         ~outmina = ~outmin2;
200                         ~outmaxa = ~outmax2;
201                         ~outminb = ~outmin1;
202                         ~outmaxb = ~outmax1;
203
204                         //increase or decrease magnitude of second and third harmonics
205
206                         ~icd3 = 3; //3
207                         ~icd6 = 6; //6
208
209
210                         ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
211
212                         #f1,f2,f3,f4,f5,f6,f7/*,f8,f9,f10,f11,f12*//*,f13,f14,f15,f16,f17,f18,f19,f20,f21,f22,f23,f24*/ =
213                         /*[432/1.6180339887499/1.6180339887499/1.6180339887499, 432/1.6180339887499, 432*1.6180339887499, 432, 432*1.6180339887499*1.6180339887499 , 432/1.6180339887499/1.6180339887499,432*1.6180339887499*1.6180339887499*1.6180339887499 ]*/
214                         [432,432,432,432,432,432,432];
215
216                         if(([ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8,~f9,~f10,~f11,~f12 ] == [nil,nil,nil,nil,nil,nil,nil,nil,nil,nil,nil,nil]), {7.do(x = 0; {("f"++(x=x+1)).asSymbol.envirPut([f1,f2,f3,f4,f5,f6,f7].at(x-1))});});
217
218                         #fp1,fp2,fp3,fp4,fp5,fp6,fp7,fp8,fp9,fp10,fp11,fp12 = [~u1,~u2,~u3,~u4,~u5,~u6,~u7,~u8,~u9,~u10,~u11,~u12];
219                         #fp1b,fp2b,fp3b,fp4b,fp5b,fp6b,fp7b,fp8b,fp9b,fp10b,fp11b,fp12b = [~u1b,~u2b,~u3b,~u4b,~u5b,~u6b,~u7b,~u8b,~u9b,~u10b,~u11b,~u12b];
220                         #fp1c,fp2c,fp3c,fp4c,fp5c,fp6c,fp7c,fp8c,fp9c,fp10c,fp11c,fp12c = [~u1c,~u2c,~u3c,~u4c,~u5c,~u6c,~u7c,~u8c,~u9c,~u10c,~u11c,~u12c];
221                         #fp1d,fp2d,fp3d,fp4d,fp5d,fp6d,fp7d,fp8d,fp9d,fp10d,fp11d,fp12d = [~u1d,~u2d,~u3d,~u4d,~u5d,~u6d,~u7d,~u8d,~u9d,~u10d,~u11d,~u12d];
222                         #fp1e,fp2e,fp3e,fp4e,fp5e,fp6e,fp7e,fp8e,fp9e,fp10e,fp11e,fp12e = [~u1e,~u2e,~u3e,~u4e,~u5e,~u6e,~u7e,~u8e,~u9e,~u10e,~u11e,~u12e];
223                         #fp1f,fp2f,fp3f,fp4f,fp5f,fp6f,fp7f,fp8f,fp9f,fp10f,fp11f,fp12f = [~u1f,~u2f,~u3f,~u4f,~u5f,~u6f,~u7f,~u8f,~u9f,~u10f,~u11f,~u12f];
224                         #fp1g,fp2g,fp3g,fp4g,fp5g,fp6g,fp7g,fp8g,fp9g,fp10g,fp11g,fp12g = [~u1g,~u2g,~u3g,~u4g,~u5g,~u6g,~u7g,~u8g,~u9g,~u10g,~u11g,~u12g];
225                         #fp1h,fp2h,fp3h,fp4h,fp5h,fp6h,fp7h,fp8h,fp9h,fp10h,fp11h,fp12h = [~u1h,~u2h,~u3h,~u4h,~u5h,~u6h,~u7h,~u8h,~u9h,~u10h,~u11h,~u12h];
226
227                         if([fp1,fp2,fp3,fp4,fp5,fp6,fp7,fp8,fp9,fp10,fp11,fp12] == [nil,nil,nil,nil,nil,nil,nil,nil,nil,nil,nil,nil], {#fp1,fp2,fp3,fp4,fp5,fp6,fp7,fp8,fp9,fp10,fp11,fp12 = [ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8,~f9,~f10,~f11,~f12 ];});
228                         if([fp1b,fp2b,fp3b,fp4b,fp5b,fp6b,fp7b,fp8b,fp9b,fp10b,fp11b,fp12b] == [nil,nil,nil,nil,nil,nil,nil,nil,nil,nil,nil,nil], {#fp1b,fp2b,fp3b,fp4b,fp5b,fp6b,fp7b,fp8b,fp9b,fp10b,fp11b,fp12b = [ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8,~f9,~f10,~f11,~f12 ];});
229                         if([fp1c,fp2c,fp3c,fp4c,fp5c,fp6c,fp7c,fp8c,fp9c,fp10c,fp11c,fp12c] == [nil,nil,nil,nil,nil,nil,nil,nil,nil,nil,nil,nil], {#fp1c,fp2c,fp3c,fp4c,fp5c,fp6c,fp7c,fp8c,fp9c,fp10c,fp11c,fp12c = [ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8,~f9,~f10,~f11,~f12 ];});
230                         if([fp1d,fp2d,fp3d,fp4d,fp5d,fp6d,fp7d,fp8d,fp9d,fp10d,fp11d,fp12d] == [nil,nil,nil,nil,nil,nil,nil,nil,nil,nil,nil,nil], {#fp1d,fp2d,fp3d,fp4d,fp5d,fp6d,fp7d,fp8d,fp9d,fp10d,fp11d,fp12d = [ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8,~f9,~f10,~f11,~f12 ];});
231                         if([fp1e,fp2e,fp3e,fp4e,fp5e,fp6e,fp7e,fp8e,fp9e,fp10e,fp11e,fp12e] == [nil,nil,nil,nil,nil,nil,nil,nil,nil,nil,nil,nil], {#fp1e,fp2e,fp3e,fp4e,fp5e,fp6e,fp7e,fp8e,fp9e,fp10e,fp11e,fp12e = [ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8,~f9,~f10,~f11,~f12 ];});
232                         if([fp1f,fp2f,fp3f,fp4f,fp5f,fp6f,fp7f,fp8f,fp9f,fp10f,fp11f,fp12f] == [nil,nil,nil,nil,nil,nil,nil,nil,nil,nil,nil,nil], {#fp1f,fp2f,fp3f,fp4f,fp5f,fp6f,fp7f,fp8f,fp9f,fp10f,fp11f,fp12f = [ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8,~f9,~f10,~f11,~f12 ];});
233                         if([fp1g,fp2g,fp3g,fp4g,fp5g,fp6g,fp7g,fp8g,fp9g,fp10g,fp11g,fp12g] == [nil,nil,nil,nil,nil,nil,nil,nil,nil,nil,nil,nil], {#fp1g,fp2g,fp3g,fp4g,fp5g,fp6g,fp7g,fp8g,fp9g,fp10g,fp11g,fp12g = [ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8,~f9,~f10,~f11,~f12 ];});
234                         if([fp1h,fp2h,fp3h,fp4h,fp5h,fp6h,fp7h,fp8h,fp9h,fp10h,fp11h,fp12h] == [nil,nil,nil,nil,nil,nil,nil,nil,nil,nil,nil,nil], {#fp1h,fp2h,fp3h,fp4h,fp5h,fp6h,fp7h,fp8h,fp9h,fp10h,fp11h,fp12h = [ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8,~f9,~f10,~f11,~f12 ];});
235
236                         /*      #fp1,fp2,fp3,fp4,fp5,fp6,fp7,fp8,fp9,fp10,fp11,fp12 = [];
237                         #fp1b,fp2b,fp3b,fp4b,fp5b,fp6b,fp7b,fp8b,fp9b,fp10b,fp11b,fp12b = [];
238                         #fp1c,fp2c,fp3c,fp4c,fp5c,fp6c,fp7c,fp8c,fp9c,fp10c,fp11c,fp12c = [];
239                         #fp1d,fp2d,fp3d,fp4d,fp5d,fp6d,fp7d,fp8d,fp9d,fp10d,fp11d,fp12d = [];
240                         #fp1e,fp2e,fp3e,fp4e,fp5e,fp6e,fp7e,fp8e,fp9e,fp10e,fp11e,fp12e = [];
241                         #fp1f,fp2f,fp3f,fp4f,fp5f,fp6f,fp7f,fp8f,fp9f,fp10f,fp11f,fp12f = [];
242                         #fp1g,fp2g,fp3g,fp4g,fp5g,fp6g,fp7g,fp8g,fp9g,fp10g,fp11g,fp12g = [];
243                         #fp1h,fp2h,fp3h,fp4h,fp5h,fp6h,fp7h,fp8h,fp9h,fp10h,fp11h,fp12h = [];
244
245                         [];*/
246
247                         ~gsine = {
248                                 SynthDef(\gsineicls, {arg graindur = 0.04, dur = 2000, atk = 0.007, rel = 0.01, gate = 1, amp = 1, i = 1, vol = ~vol, rate = 20, tune = 0,dseqval,
249                                         a, b, c, d, e, f, pan=0, fc = 1;
250                                         var s1,s2,s3,s4,s5,s6, out, env1, dseq1f,dseq1r,dseq2f,dseq2r,dseq6f,dseq6r,n1,n2,n3,n4,n5,n6,n7,n8,n9;
251                                         #n1,n2,n3,n4,n5,n6,n7,n8,n9=[~ngm6,~ngm6,~ngm6,~ngm6,~ngm6,~ngm6,~ngm6,~ngm6,~ngm6];
252                                         dseq6f = Dseq([/*1*/    #a,b,c,d,e,f=[ ~a,~b,~c,~d,~e,~f  ],/*2*/       [ a = a/~fth*n1, b = b/~fth*n1, c = c/~fth*n1, d = d/~fth*n1, e = e/~fth*n1, f = f/~fth*n1 ],/*3*/      [ a = a,         b = b*~fth,    c = c,         d = d,         e = e,         f = f*~fth  ],/*4*/        [ a = a*~fth,    b = b/~fth,    c = c,         d = d,         e = e*~fth,    f = f/~fth  ],/*5*/        [ a = a/~fth,    b = b*~fth,    c = c,         d = d*~fth,    e = e,         f = f*~fth ],/*6*/ [ a = a*~fth,    b = b,         c = c*~fth,    d = d/~fth,    e = e,         f = f/~fth  ],/*7*/        [ a = a/~fth,    b = b/~fth,    c = c/~fth,    d = d,         e = e,         f = f ],/*8*/      [ a = a,         b = b*~fth,    c = c,         d = d,         e = e/~fth,    f = f ],/*9*/      [ a = a*~fth,    b = b,         c = c,         d = d*~fth,    e = e*~fth,    f = f*~fth ],/*10*/        [ a = a,         b = b,         c = c*~fth,    d = d/~fth,    e = e,         f = f ],/*11*/     [ a = a/~fth,    b = b/~fth,    c = c/~fth,    d = d*~fth,    e = e,         f = f ],/*12*/     [ a = a*~fth*n2, b = b*~fth*n2, c = c*~fth*n2, d = d/~fth*n2, e = e/~fth*n2, f = f/~fth*n2 ],/*13*/     [ a = a,         b = b,         c = c,         d = d*~fth,    e = e,         f = f*~fth ],/*14*/        [ a = a,         b = b/~fth,    c = c,         d = d,         e = e*~fth,    f = f],/*15*/      [ a = a/~fth,    b = b,         c = c/~fth,    d = d,         e = e/~fth,    f = f/~fth ],/*16*/        [ a = a,         b = b,         c = c*~fth,    d = d/~fth,    e = e,         f = f ],/*17*/     [ a = a,         b = b*~fth,    c = c,         d = d,         e = e,         f = f*~fth],/*18*/ [ a = a*~fth*n3, b = b/~fth*n3, c = c/~fth*n3, d = d*~fth*n3, e = e*~fth*n3, f = f/~fth*n3 ],/*19*/     [ a = a/~fth,    b = b,         c = c,         d = d/~fth,    e = e,         f = f*~fth ],/*20*/        [ a = a*~fth,    b = b*~fth,    c = c,         d = d,         e = e/~fth,    f = f/~fth ],/*21*/        [ a = a,         b = b/~fth,    c = c*~fth,    d = d,         e = e,         f = f*~fth ],/*22*/        [ a = a,         b = b,         c = c/~fth,    d = d*~fth,    e = e,         f = f ],/*23*/     [ a = a,         b = b,         c = c,         d = d/~fth,    e = e,         f = f/~fth ],/*24*/        [ a = a/~fth,    b = b,         c = c,         d = d,         e = e,         f = f*~fth ],/*25*/        [ a = a*~fth,    b = b*~fth,    c = c*~fth,    d = d,         e = e,         f = f ],/*26*/     [ a = a,         b = b/~fth,    c = c/~fth,    d = d*~fth,    e = e*~fth,    f = f ],/*27*/     [ a = a,         b = b,         c = c,         d = d/~fth,    e = e/~fth,    f = f ],/*28*/     [ a = a/~fth*n4, b = b*~fth*n4, c = c*~fth*n4, d = d*~fth*n4, e = e*~fth*n4, f = f/~fth*n4 ],/*29*/     [ a = a,         b = b,         c = c/~fth,    d = d/~fth,    e = e,         f = f ],/*30*/     [ a = a*~fth*n5, b = b/~fth*n5, c = c*~fth*n5, d = d*~fth*n5, e = e/~fth*n5, f = f*~fth*n5 ],/*31*/     [ a = a/~fth,    b = b*~fth,    c = c,         d = d,         e = e,         f = f/~fth ],/*32*/        [ a = a,         b = b/~fth,    c = c,         d = d,         e = e*~fth,    f = f ],/*33*/     [ a = a*~fth,    b = b*~fth,    c = c,         d = d,         e = e/~fth,    f = f ],/*34*/     [ a = a/~fth,    b = b/~fth,    c = c,         d = d,         e = e*~fth,    f = f*~fth ],/*35*/        [ a = a*~fth,    b = b,         c = c,         d = d/~fth,    e = e/~fth,    f = f/~fth ],/*36*/        [ a = a/~fth,    b = b,         c = c/~fth,    d = d*~fth,    e = e,         f = f*~fth ],/*37*/        [ a = a*~fth,    b = b*~fth,    c = c,         d = d,         e = e,         f = f ],/*38*/     [ a = a,         b = b/~fth,    c = c*~fth,    d = d/~fth,    e = e*~fth,    f = f ],/*39*/     [ a = a/~fth*n6, b = b*~fth*n6, c = c/~fth*n6, d = d*~fth*n6, e = e/~fth*n6, f = f/~fth*n6 ],/*40*/     [ a = a,         b = b/~fth,    c = c*~fth,    d = d/~fth,    e = e*~fth,    f = f ],/*41*/     [ a = a*~fth,    b = b,         c = c/~fth,    d = d,         e = e,         f = f*~fth ],/*42*/        [ a = a,         b = b*~fth,    c = c,         d = d,         e = e/~fth,    f = f ],/*43*/     [ a = a/~fth,    b = b,         c = c*~fth,    d = d*~fth,    e = e*~fth,    f = f ],/*44*/     [ a = a*~fth,    b = b,         c = c,         d = d,         e = e,         f = f/~fth ],/*45*/        [ a = a/~fth,    b = b,         c = c,         d = d/~fth,    e = e/~fth,    f = f ],/*46*/     [ a = a,         b = b/~fth,    c = c/~fth,    d = d*~fth,    e = e*~fth,    f = f ],/*47*/     [ a = a,         b = b*~fth,    c = c*~fth,    d = d/~fth,    e = e,         f = f ],/*48*/     [ a = a,         b = b,         c = c/~fth,    d = d*~fth,    e = e,         f = f ],/*49*/     [ a = a,         b = b,         c = c*~fth,    d = d,         e = e/~fth,    f = f*~fth ],/*50*/        [ a = a*~fth,    b = b/~fth,    c = c,         d = d,         e = e*~fth,    f = f/~fth ],/*51*/        [ a = a/~fth,    b = b,         c = c,         d = d/~fth,    e = e/~fth,    f = f*~fth ],/*52*/        [ a = a*~fth,    b = b,         c = c/~fth,    d = d*~fth,    e = e,         f = f/~fth ],/*53*/        [ a = a,         b = b*~fth,    c = c,         d = d,         e = e,         f = f ],/*54*/     [ a = a/~fth*n7, b = b/~fth*n7, c = c*~fth*n7, d = d/~fth*n7, e = e*~fth*n7, f = f*~fth*n7 ],/*55*/     [ a = a,         b = b,         c = c,         d = d*~fth,    e = e/~fth,    f = f ],/*56*/     [ a = a*~fth,    b = b,         c = c,         d = d,         e = e,         f = f/~fth ],/*57*/        [ a = a,         b = b*~fth,    c = c/~fth,    d = d,         e = e*~fth,    f = f ],/*58*/     [ a = a/~fth,    b = b,         c = c*~fth,    d = d/~fth,    e = e,         f = f*~fth ],/*59*/        [ a = a*~fth,    b = b,         c = c/~fth,    d = d,         e = e,         f = f/~fth ],/*60*/        [ a = a/~fth,    b = b,         c = c,         d = d,         e = e,         f = f*~fth ],/*61*/        [ a = a*~fth,    b = b,         c = c,         d = d,         e = e,         f = f ],/*62*/     [ a = a/~fth*n8, b = b/~fth*n8, c = c*~fth*n8, d = d*~fth*n8, e = e/~fth*n8, f = f/~fth*n8 ],/*63*/     [ a = a,         b = b*~fth,    c = c/~fth,    d = d,         e = e,         f = f*~fth ],/*64*/        [ a = a*~fth*n9, b = b/~fth*n9, c = c*~fth*n9, d = d/~fth*n9, e = e*~fth*n9, f = f/~fth*n9 ]]
253                                                 ++Array.fill((~gsinenum*6 -1), {[/*1*/  [ a = a,         b = b*~fth,    c = c,         d = d*~fth,    e = e,         f = f*~fth ],/*2*/ [ a = a/~fth*n1, b = b/~fth*n1, c = c/~fth*n1, d = d/~fth*n1, e = e/~fth*n1, f = f/~fth*n1 ],/*3*/      [ a = a,         b = b*~fth,    c = c,         d = d,         e = e,         f = f*~fth  ],/*4*/        [ a = a*~fth,    b = b/~fth,    c = c,         d = d,         e = e*~fth,    f = f/~fth  ],/*5*/        [ a = a/~fth,    b = b*~fth,    c = c,         d = d*~fth,    e = e,         f = f*~fth ],/*6*/ [ a = a*~fth,    b = b,         c = c*~fth,    d = d/~fth,    e = e,         f = f/~fth  ],/*7*/        [ a = a/~fth,    b = b/~fth,    c = c/~fth,    d = d,         e = e,         f = f ],/*8*/      [ a = a,         b = b*~fth,    c = c,         d = d,         e = e/~fth,    f = f ],/*9*/      [ a = a*~fth,    b = b,         c = c,         d = d*~fth,    e = e*~fth,    f = f*~fth ],/*10*/        [ a = a,         b = b,         c = c*~fth,    d = d/~fth,    e = e,         f = f ],/*11*/     [ a = a/~fth,    b = b/~fth,    c = c/~fth,    d = d*~fth,    e = e,         f = f ],/*12*/     [ a = a*~fth*n2, b = b*~fth*n2, c = c*~fth*n2, d = d/~fth*n2, e = e/~fth*n2, f = f/~fth*n2 ],/*13*/     [ a = a,         b = b,         c = c,         d = d*~fth,    e = e,         f = f*~fth ],/*14*/        [ a = a,         b = b/~fth,    c = c,         d = d,         e = e*~fth,    f = f],/*15*/      [ a = a/~fth,    b = b,         c = c/~fth,    d = d,         e = e/~fth,    f = f/~fth ],/*16*/        [ a = a,         b = b,         c = c*~fth,    d = d/~fth,    e = e,         f = f ],/*17*/     [ a = a,         b = b*~fth,    c = c,         d = d,         e = e,         f = f*~fth],/*18*/ [ a = a*~fth*n3, b = b/~fth*n3, c = c/~fth*n3, d = d*~fth*n3, e = e*~fth*n3, f = f/~fth*n3 ],/*19*/     [ a = a/~fth,    b = b,         c = c,         d = d/~fth,    e = e,         f = f*~fth ],/*20*/        [ a = a*~fth,    b = b*~fth,    c = c,         d = d,         e = e/~fth,    f = f/~fth ],/*21*/        [ a = a,         b = b/~fth,    c = c*~fth,    d = d,         e = e,         f = f*~fth ],/*22*/        [ a = a,         b = b,         c = c/~fth,    d = d*~fth,    e = e,         f = f ],/*23*/     [ a = a,         b = b,         c = c,         d = d/~fth,    e = e,         f = f/~fth ],/*24*/        [ a = a/~fth,    b = b,         c = c,         d = d,         e = e,         f = f*~fth ],/*25*/        [ a = a*~fth,    b = b*~fth,    c = c*~fth,    d = d,         e = e,         f = f ],/*26*/     [ a = a,         b = b/~fth,    c = c/~fth,    d = d*~fth,    e = e*~fth,    f = f ],/*27*/     [ a = a,         b = b,         c = c,         d = d/~fth,    e = e/~fth,    f = f ],/*28*/     [ a = a/~fth*n4, b = b*~fth*n4, c = c*~fth*n4, d = d*~fth*n4, e = e*~fth*n4, f = f/~fth*n4 ],/*29*/     [ a = a,         b = b,         c = c/~fth,    d = d/~fth,    e = e,         f = f ],/*30*/     [ a = a*~fth*n5, b = b/~fth*n5, c = c*~fth*n5, d = d*~fth*n5, e = e/~fth*n5, f = f*~fth*n5 ],/*31*/     [ a = a/~fth,    b = b*~fth,    c = c,         d = d,         e = e,         f = f/~fth ],/*32*/        [ a = a,         b = b/~fth,    c = c,         d = d,         e = e*~fth,    f = f ],/*33*/     [ a = a*~fth,    b = b*~fth,    c = c,         d = d,         e = e/~fth,    f = f ],/*34*/     [ a = a/~fth,    b = b/~fth,    c = c,         d = d,         e = e*~fth,    f = f*~fth ],/*35*/        [ a = a*~fth,    b = b,         c = c,         d = d/~fth,    e = e/~fth,    f = f/~fth ],/*36*/        [ a = a/~fth,    b = b,         c = c/~fth,    d = d*~fth,    e = e,         f = f*~fth ],/*37*/        [ a = a*~fth,    b = b*~fth,    c = c,         d = d,         e = e,         f = f ],/*38*/     [ a = a,         b = b/~fth,    c = c*~fth,    d = d/~fth,    e = e*~fth,    f = f ],/*39*/     [ a = a/~fth*n6, b = b*~fth*n6, c = c/~fth*n6, d = d*~fth*n6, e = e/~fth*n6, f = f/~fth*n6 ],/*40*/     [ a = a,         b = b/~fth,    c = c*~fth,    d = d/~fth,    e = e*~fth,    f = f ],/*41*/     [ a = a*~fth,    b = b,         c = c/~fth,    d = d,         e = e,         f = f*~fth ],/*42*/        [ a = a,         b = b*~fth,    c = c,         d = d,         e = e/~fth,    f = f ],/*43*/     [ a = a/~fth,    b = b,         c = c*~fth,    d = d*~fth,    e = e*~fth,    f = f ],/*44*/     [ a = a*~fth,    b = b,         c = c,         d = d,         e = e,         f = f/~fth ],/*45*/        [ a = a/~fth,    b = b,         c = c,         d = d/~fth,    e = e/~fth,    f = f ],/*46*/     [ a = a,         b = b/~fth,    c = c/~fth,    d = d*~fth,    e = e*~fth,    f = f ],/*47*/     [ a = a,         b = b*~fth,    c = c*~fth,    d = d/~fth,    e = e,         f = f ],/*48*/     [ a = a,         b = b,         c = c/~fth,    d = d*~fth,    e = e,         f = f ],/*49*/     [ a = a,         b = b,         c = c*~fth,    d = d,         e = e/~fth,    f = f*~fth ],/*50*/        [ a = a*~fth,    b = b/~fth,    c = c,         d = d,         e = e*~fth,    f = f/~fth ],/*51*/        [ a = a/~fth,    b = b,         c = c,         d = d/~fth,    e = e/~fth,    f = f*~fth ],/*52*/        [ a = a*~fth,    b = b,         c = c/~fth,    d = d*~fth,    e = e,         f = f/~fth ],/*53*/        [ a = a,         b = b*~fth,    c = c,         d = d,         e = e,         f = f ],/*54*/     [ a = a/~fth*n7, b = b/~fth*n7, c = c*~fth*n7, d = d/~fth*n7, e = e*~fth*n7, f = f*~fth*n7 ],/*55*/     [ a = a,         b = b,         c = c,         d = d*~fth,    e = e/~fth,    f = f ],/*56*/     [ a = a*~fth,    b = b,         c = c,         d = d,         e = e,         f = f/~fth ],/*57*/        [ a = a,         b = b*~fth,    c = c/~fth,    d = d,         e = e*~fth,    f = f ],/*58*/     [ a = a/~fth,    b = b,         c = c*~fth,    d = d/~fth,    e = e,         f = f*~fth ],/*59*/        [ a = a*~fth,    b = b,         c = c/~fth,    d = d,         e = e,         f = f/~fth ],/*60*/        [ a = a/~fth,    b = b,         c = c,         d = d,         e = e,         f = f*~fth ],/*61*/        [ a = a*~fth,    b = b,         c = c,         d = d,         e = e,         f = f ],/*62*/     [ a = a/~fth*n8, b = b/~fth*n8, c = c*~fth*n8, d = d*~fth*n8, e = e/~fth*n8, f = f/~fth*n8 ],/*63*/     [ a = a,         b = b*~fth,    c = c/~fth,    d = d,         e = e,         f = f*~fth ],/*64*/        [ a = a*~fth*n9, b = b/~fth*n9, c = c*~fth*n9, d = d/~fth*n9, e = e*~fth*n9, f = f/~fth*n9 ]]
254                                         }).flatten, inf);
255                                         dseq6r = Dseq([[/*1*/   #a,b,c,d,e,f=[ ~a,~b,~c,~d,~e,~f  ],/*2*/       [ a = a/~fth*n1, b = b/~fth*n1, c = c/~fth*n1, d = d/~fth*n1, e = e/~fth*n1, f = f/~fth*n1 ],/*3*/      [ a = a,         b = b*~fth,    c = c,         d = d,         e = e,         f = f*~fth  ],/*4*/        [ a = a*~fth,    b = b/~fth,    c = c,         d = d,         e = e*~fth,    f = f/~fth  ],/*5*/        [ a = a/~fth,    b = b*~fth,    c = c,         d = d*~fth,    e = e,         f = f*~fth ],/*6*/ [ a = a*~fth,    b = b,         c = c*~fth,    d = d/~fth,    e = e,         f = f/~fth  ],/*7*/        [ a = a/~fth,    b = b/~fth,    c = c/~fth,    d = d,         e = e,         f = f ],/*8*/      [ a = a,         b = b*~fth,    c = c,         d = d,         e = e/~fth,    f = f ],/*9*/      [ a = a*~fth,    b = b,         c = c,         d = d*~fth,    e = e*~fth,    f = f*~fth ],/*10*/        [ a = a,         b = b,         c = c*~fth,    d = d/~fth,    e = e,         f = f ],/*11*/     [ a = a/~fth,    b = b/~fth,    c = c/~fth,    d = d*~fth,    e = e,         f = f ],/*12*/     [ a = a*~fth*n2, b = b*~fth*n2, c = c*~fth*n2, d = d/~fth*n2, e = e/~fth*n2, f = f/~fth*n2 ],/*13*/     [ a = a,         b = b,         c = c,         d = d*~fth,    e = e,         f = f*~fth ],/*14*/        [ a = a,         b = b/~fth,    c = c,         d = d,         e = e*~fth,    f = f],/*15*/      [ a = a/~fth,    b = b,         c = c/~fth,    d = d,         e = e/~fth,    f = f/~fth ],/*16*/        [ a = a,         b = b,         c = c*~fth,    d = d/~fth,    e = e,         f = f ],/*17*/     [ a = a,         b = b*~fth,    c = c,         d = d,         e = e,         f = f*~fth],/*18*/ [ a = a*~fth*n3, b = b/~fth*n3, c = c/~fth*n3, d = d*~fth*n3, e = e*~fth*n3, f = f/~fth*n3 ],/*19*/     [ a = a/~fth,    b = b,         c = c,         d = d/~fth,    e = e,         f = f*~fth ],/*20*/        [ a = a*~fth,    b = b*~fth,    c = c,         d = d,         e = e/~fth,    f = f/~fth ],/*21*/        [ a = a,         b = b/~fth,    c = c*~fth,    d = d,         e = e,         f = f*~fth ],/*22*/        [ a = a,         b = b,         c = c/~fth,    d = d*~fth,    e = e,         f = f ],/*23*/     [ a = a,         b = b,         c = c,         d = d/~fth,    e = e,         f = f/~fth ],/*24*/        [ a = a/~fth,    b = b,         c = c,         d = d,         e = e,         f = f*~fth ],/*25*/        [ a = a*~fth,    b = b*~fth,    c = c*~fth,    d = d,         e = e,         f = f ],/*26*/     [ a = a,         b = b/~fth,    c = c/~fth,    d = d*~fth,    e = e*~fth,    f = f ],/*27*/     [ a = a,         b = b,         c = c,         d = d/~fth,    e = e/~fth,    f = f ],/*28*/     [ a = a/~fth*n4, b = b*~fth*n4, c = c*~fth*n4, d = d*~fth*n4, e = e*~fth*n4, f = f/~fth*n4 ],/*29*/     [ a = a,         b = b,         c = c/~fth,    d = d/~fth,    e = e,         f = f ],/*30*/     [ a = a*~fth*n5, b = b/~fth*n5, c = c*~fth*n5, d = d*~fth*n5, e = e/~fth*n5, f = f*~fth*n5 ],/*31*/     [ a = a/~fth,    b = b*~fth,    c = c,         d = d,         e = e,         f = f/~fth ],/*32*/        [ a = a,         b = b/~fth,    c = c,         d = d,         e = e*~fth,    f = f ],/*33*/     [ a = a*~fth,    b = b*~fth,    c = c,         d = d,         e = e/~fth,    f = f ],/*34*/     [ a = a/~fth,    b = b/~fth,    c = c,         d = d,         e = e*~fth,    f = f*~fth ],/*35*/        [ a = a*~fth,    b = b,         c = c,         d = d/~fth,    e = e/~fth,    f = f/~fth ],/*36*/        [ a = a/~fth,    b = b,         c = c/~fth,    d = d*~fth,    e = e,         f = f*~fth ],/*37*/        [ a = a*~fth,    b = b*~fth,    c = c,         d = d,         e = e,         f = f ],/*38*/     [ a = a,         b = b/~fth,    c = c*~fth,    d = d/~fth,    e = e*~fth,    f = f ],/*39*/     [ a = a/~fth*n6, b = b*~fth*n6, c = c/~fth*n6, d = d*~fth*n6, e = e/~fth*n6, f = f/~fth*n6 ],/*40*/     [ a = a,         b = b/~fth,    c = c*~fth,    d = d/~fth,    e = e*~fth,    f = f ],/*41*/     [ a = a*~fth,    b = b,         c = c/~fth,    d = d,         e = e,         f = f*~fth ],/*42*/        [ a = a,         b = b*~fth,    c = c,         d = d,         e = e/~fth,    f = f ],/*43*/     [ a = a/~fth,    b = b,         c = c*~fth,    d = d*~fth,    e = e*~fth,    f = f ],/*44*/     [ a = a*~fth,    b = b,         c = c,         d = d,         e = e,         f = f/~fth ],/*45*/        [ a = a/~fth,    b = b,         c = c,         d = d/~fth,    e = e/~fth,    f = f ],/*46*/     [ a = a,         b = b/~fth,    c = c/~fth,    d = d*~fth,    e = e*~fth,    f = f ],/*47*/     [ a = a,         b = b*~fth,    c = c*~fth,    d = d/~fth,    e = e,         f = f ],/*48*/     [ a = a,         b = b,         c = c/~fth,    d = d*~fth,    e = e,         f = f ],/*49*/     [ a = a,         b = b,         c = c*~fth,    d = d,         e = e/~fth,    f = f*~fth ],/*50*/        [ a = a*~fth,    b = b/~fth,    c = c,         d = d,         e = e*~fth,    f = f/~fth ],/*51*/        [ a = a/~fth,    b = b,         c = c,         d = d/~fth,    e = e/~fth,    f = f*~fth ],/*52*/        [ a = a*~fth,    b = b,         c = c/~fth,    d = d*~fth,    e = e,         f = f/~fth ],/*53*/        [ a = a,         b = b*~fth,    c = c,         d = d,         e = e,         f = f ],/*54*/     [ a = a/~fth*n7, b = b/~fth*n7, c = c*~fth*n7, d = d/~fth*n7, e = e*~fth*n7, f = f*~fth*n7 ],/*55*/     [ a = a,         b = b,         c = c,         d = d*~fth,    e = e/~fth,    f = f ],/*56*/     [ a = a*~fth,    b = b,         c = c,         d = d,         e = e,         f = f/~fth ],/*57*/        [ a = a,         b = b*~fth,    c = c/~fth,    d = d,         e = e*~fth,    f = f ],/*58*/     [ a = a/~fth,    b = b,         c = c*~fth,    d = d/~fth,    e = e,         f = f*~fth ],/*59*/        [ a = a*~fth,    b = b,         c = c/~fth,    d = d,         e = e,         f = f/~fth ],/*60*/        [ a = a/~fth,    b = b,         c = c,         d = d,         e = e,         f = f*~fth ],/*61*/        [ a = a*~fth,    b = b,         c = c,         d = d,         e = e,         f = f ],/*62*/     [ a = a/~fth*n8, b = b/~fth*n8, c = c*~fth*n8, d = d*~fth*n8, e = e/~fth*n8, f = f/~fth*n8 ],/*63*/     [ a = a,         b = b*~fth,    c = c/~fth,    d = d,         e = e,         f = f*~fth ],/*64*/        [ a = a*~fth*n9, b = b/~fth*n9, c = c*~fth*n9, d = d/~fth*n9, e = e*~fth*n9, f = f/~fth*n9 ]]
256                                                 ++Array.fill((~gsinenum*6 -1), {[/*1*/  [ a = a,         b = b*~fth,    c = c,         d = d*~fth,    e = e,         f = f*~fth ],/*2*/ [ a = a/~fth*n1, b = b/~fth*n1, c = c/~fth*n1, d = d/~fth*n1, e = e/~fth*n1, f = f/~fth*n1 ],/*3*/      [ a = a,         b = b*~fth,    c = c,         d = d,         e = e,         f = f*~fth  ],/*4*/        [ a = a*~fth,    b = b/~fth,    c = c,         d = d,         e = e*~fth,    f = f/~fth  ],/*5*/        [ a = a/~fth,    b = b*~fth,    c = c,         d = d*~fth,    e = e,         f = f*~fth ],/*6*/ [ a = a*~fth,    b = b,         c = c*~fth,    d = d/~fth,    e = e,         f = f/~fth  ],/*7*/        [ a = a/~fth,    b = b/~fth,    c = c/~fth,    d = d,         e = e,         f = f ],/*8*/      [ a = a,         b = b*~fth,    c = c,         d = d,         e = e/~fth,    f = f ],/*9*/      [ a = a*~fth,    b = b,         c = c,         d = d*~fth,    e = e*~fth,    f = f*~fth ],/*10*/        [ a = a,         b = b,         c = c*~fth,    d = d/~fth,    e = e,         f = f ],/*11*/     [ a = a/~fth,    b = b/~fth,    c = c/~fth,    d = d*~fth,    e = e,         f = f ],/*12*/     [ a = a*~fth*n2, b = b*~fth*n2, c = c*~fth*n2, d = d/~fth*n2, e = e/~fth*n2, f = f/~fth*n2 ],/*13*/     [ a = a,         b = b,         c = c,         d = d*~fth,    e = e,         f = f*~fth ],/*14*/        [ a = a,         b = b/~fth,    c = c,         d = d,         e = e*~fth,    f = f],/*15*/      [ a = a/~fth,    b = b,         c = c/~fth,    d = d,         e = e/~fth,    f = f/~fth ],/*16*/        [ a = a,         b = b,         c = c*~fth,    d = d/~fth,    e = e,         f = f ],/*17*/     [ a = a,         b = b*~fth,    c = c,         d = d,         e = e,         f = f*~fth],/*18*/ [ a = a*~fth*n3, b = b/~fth*n3, c = c/~fth*n3, d = d*~fth*n3, e = e*~fth*n3, f = f/~fth*n3 ],/*19*/     [ a = a/~fth,    b = b,         c = c,         d = d/~fth,    e = e,         f = f*~fth ],/*20*/        [ a = a*~fth,    b = b*~fth,    c = c,         d = d,         e = e/~fth,    f = f/~fth ],/*21*/        [ a = a,         b = b/~fth,    c = c*~fth,    d = d,         e = e,         f = f*~fth ],/*22*/        [ a = a,         b = b,         c = c/~fth,    d = d*~fth,    e = e,         f = f ],/*23*/     [ a = a,         b = b,         c = c,         d = d/~fth,    e = e,         f = f/~fth ],/*24*/        [ a = a/~fth,    b = b,         c = c,         d = d,         e = e,         f = f*~fth ],/*25*/        [ a = a*~fth,    b = b*~fth,    c = c*~fth,    d = d,         e = e,         f = f ],/*26*/     [ a = a,         b = b/~fth,    c = c/~fth,    d = d*~fth,    e = e*~fth,    f = f ],/*27*/     [ a = a,         b = b,         c = c,         d = d/~fth,    e = e/~fth,    f = f ],/*28*/     [ a = a/~fth*n4, b = b*~fth*n4, c = c*~fth*n4, d = d*~fth*n4, e = e*~fth*n4, f = f/~fth*n4 ],/*29*/     [ a = a,         b = b,         c = c/~fth,    d = d/~fth,    e = e,         f = f ],/*30*/     [ a = a*~fth*n5, b = b/~fth*n5, c = c*~fth*n5, d = d*~fth*n5, e = e/~fth*n5, f = f*~fth*n5 ],/*31*/     [ a = a/~fth,    b = b*~fth,    c = c,         d = d,         e = e,         f = f/~fth ],/*32*/        [ a = a,         b = b/~fth,    c = c,         d = d,         e = e*~fth,    f = f ],/*33*/     [ a = a*~fth,    b = b*~fth,    c = c,         d = d,         e = e/~fth,    f = f ],/*34*/     [ a = a/~fth,    b = b/~fth,    c = c,         d = d,         e = e*~fth,    f = f*~fth ],/*35*/        [ a = a*~fth,    b = b,         c = c,         d = d/~fth,    e = e/~fth,    f = f/~fth ],/*36*/        [ a = a/~fth,    b = b,         c = c/~fth,    d = d*~fth,    e = e,         f = f*~fth ],/*37*/        [ a = a*~fth,    b = b*~fth,    c = c,         d = d,         e = e,         f = f ],/*38*/     [ a = a,         b = b/~fth,    c = c*~fth,    d = d/~fth,    e = e*~fth,    f = f ],/*39*/     [ a = a/~fth*n6, b = b*~fth*n6, c = c/~fth*n6, d = d*~fth*n6, e = e/~fth*n6, f = f/~fth*n6 ],/*40*/     [ a = a,         b = b/~fth,    c = c*~fth,    d = d/~fth,    e = e*~fth,    f = f ],/*41*/     [ a = a*~fth,    b = b,         c = c/~fth,    d = d,         e = e,         f = f*~fth ],/*42*/        [ a = a,         b = b*~fth,    c = c,         d = d,         e = e/~fth,    f = f ],/*43*/     [ a = a/~fth,    b = b,         c = c*~fth,    d = d*~fth,    e = e*~fth,    f = f ],/*44*/     [ a = a*~fth,    b = b,         c = c,         d = d,         e = e,         f = f/~fth ],/*45*/        [ a = a/~fth,    b = b,         c = c,         d = d/~fth,    e = e/~fth,    f = f ],/*46*/     [ a = a,         b = b/~fth,    c = c/~fth,    d = d*~fth,    e = e*~fth,    f = f ],/*47*/     [ a = a,         b = b*~fth,    c = c*~fth,    d = d/~fth,    e = e,         f = f ],/*48*/     [ a = a,         b = b,         c = c/~fth,    d = d*~fth,    e = e,         f = f ],/*49*/     [ a = a,         b = b,         c = c*~fth,    d = d,         e = e/~fth,    f = f*~fth ],/*50*/        [ a = a*~fth,    b = b/~fth,    c = c,         d = d,         e = e*~fth,    f = f/~fth ],/*51*/        [ a = a/~fth,    b = b,         c = c,         d = d/~fth,    e = e/~fth,    f = f*~fth ],/*52*/        [ a = a*~fth,    b = b,         c = c/~fth,    d = d*~fth,    e = e,         f = f/~fth ],/*53*/        [ a = a,         b = b*~fth,    c = c,         d = d,         e = e,         f = f ],/*54*/     [ a = a/~fth*n7, b = b/~fth*n7, c = c*~fth*n7, d = d/~fth*n7, e = e*~fth*n7, f = f*~fth*n7 ],/*55*/     [ a = a,         b = b,         c = c,         d = d*~fth,    e = e/~fth,    f = f ],/*56*/     [ a = a*~fth,    b = b,         c = c,         d = d,         e = e,         f = f/~fth ],/*57*/        [ a = a,         b = b*~fth,    c = c/~fth,    d = d,         e = e*~fth,    f = f ],/*58*/     [ a = a/~fth,    b = b,         c = c*~fth,    d = d/~fth,    e = e,         f = f*~fth ],/*59*/        [ a = a*~fth,    b = b,         c = c/~fth,    d = d,         e = e,         f = f/~fth ],/*60*/        [ a = a/~fth,    b = b,         c = c,         d = d,         e = e,         f = f*~fth ],/*61*/        [ a = a*~fth,    b = b,         c = c,         d = d,         e = e,         f = f ],/*62*/     [ a = a/~fth*n8, b = b/~fth*n8, c = c*~fth*n8, d = d*~fth*n8, e = e/~fth*n8, f = f/~fth*n8 ],/*63*/     [ a = a,         b = b*~fth,    c = c/~fth,    d = d,         e = e,         f = f*~fth ],/*64*/        [ a = a*~fth*n9, b = b/~fth*n9, c = c*~fth*n9, d = d/~fth*n9, e = e*~fth*n9, f = f/~fth*n9 ]]
257                                         }).flatten].flatten.reverse, inf);
258                                         #n1,n2,n3,n4,n5,n6,n7,n8,n9=[~ngm2,~ngm2,~ngm2,~ngm2,~ngm2,~ngm2,~ngm2,~ngm2,~ngm2];
259                                         dseq2f = Dseq([/*1*/    #a,b,c,d,e,f=[ ~a,~b,~c,~d,~e,~f  ],/*2*/       [ a = a/~fth*n1, b = b/~fth*n1, c = c/~fth*n1, d = d/~fth*n1, e = e/~fth*n1, f = f/~fth*n1 ],/*3*/      [ a = a,         b = b*~fth,    c = c,         d = d,         e = e,         f = f*~fth  ],/*4*/        [ a = a*~fth,    b = b/~fth,    c = c,         d = d,         e = e*~fth,    f = f/~fth  ],/*5*/        [ a = a/~fth,    b = b*~fth,    c = c,         d = d*~fth,    e = e,         f = f*~fth ],/*6*/ [ a = a*~fth,    b = b,         c = c*~fth,    d = d/~fth,    e = e,         f = f/~fth  ],/*7*/        [ a = a/~fth,    b = b/~fth,    c = c/~fth,    d = d,         e = e,         f = f ],/*8*/      [ a = a,         b = b*~fth,    c = c,         d = d,         e = e/~fth,    f = f ],/*9*/      [ a = a*~fth,    b = b,         c = c,         d = d*~fth,    e = e*~fth,    f = f*~fth ],/*10*/        [ a = a,         b = b,         c = c*~fth,    d = d/~fth,    e = e,         f = f ],/*11*/     [ a = a/~fth,    b = b/~fth,    c = c/~fth,    d = d*~fth,    e = e,         f = f ],/*12*/     [ a = a*~fth*n2, b = b*~fth*n2, c = c*~fth*n2, d = d/~fth*n2, e = e/~fth*n2, f = f/~fth*n2 ],/*13*/     [ a = a,         b = b,         c = c,         d = d*~fth,    e = e,         f = f*~fth ],/*14*/        [ a = a,         b = b/~fth,    c = c,         d = d,         e = e*~fth,    f = f],/*15*/      [ a = a/~fth,    b = b,         c = c/~fth,    d = d,         e = e/~fth,    f = f/~fth ],/*16*/        [ a = a,         b = b,         c = c*~fth,    d = d/~fth,    e = e,         f = f ],/*17*/     [ a = a,         b = b*~fth,    c = c,         d = d,         e = e,         f = f*~fth],/*18*/ [ a = a*~fth*n3, b = b/~fth*n3, c = c/~fth*n3, d = d*~fth*n3, e = e*~fth*n3, f = f/~fth*n3 ],/*19*/     [ a = a/~fth,    b = b,         c = c,         d = d/~fth,    e = e,         f = f*~fth ],/*20*/        [ a = a*~fth,    b = b*~fth,    c = c,         d = d,         e = e/~fth,    f = f/~fth ],/*21*/        [ a = a,         b = b/~fth,    c = c*~fth,    d = d,         e = e,         f = f*~fth ],/*22*/        [ a = a,         b = b,         c = c/~fth,    d = d*~fth,    e = e,         f = f ],/*23*/     [ a = a,         b = b,         c = c,         d = d/~fth,    e = e,         f = f/~fth ],/*24*/        [ a = a/~fth,    b = b,         c = c,         d = d,         e = e,         f = f*~fth ],/*25*/        [ a = a*~fth,    b = b*~fth,    c = c*~fth,    d = d,         e = e,         f = f ],/*26*/     [ a = a,         b = b/~fth,    c = c/~fth,    d = d*~fth,    e = e*~fth,    f = f ],/*27*/     [ a = a,         b = b,         c = c,         d = d/~fth,    e = e/~fth,    f = f ],/*28*/     [ a = a/~fth*n4, b = b*~fth*n4, c = c*~fth*n4, d = d*~fth*n4, e = e*~fth*n4, f = f/~fth*n4 ],/*29*/     [ a = a,         b = b,         c = c/~fth,    d = d/~fth,    e = e,         f = f ],/*30*/     [ a = a*~fth*n5, b = b/~fth*n5, c = c*~fth*n5, d = d*~fth*n5, e = e/~fth*n5, f = f*~fth*n5 ],/*31*/     [ a = a/~fth,    b = b*~fth,    c = c,         d = d,         e = e,         f = f/~fth ],/*32*/        [ a = a,         b = b/~fth,    c = c,         d = d,         e = e*~fth,    f = f ],/*33*/     [ a = a*~fth,    b = b*~fth,    c = c,         d = d,         e = e/~fth,    f = f ],/*34*/     [ a = a/~fth,    b = b/~fth,    c = c,         d = d,         e = e*~fth,    f = f*~fth ],/*35*/        [ a = a*~fth,    b = b,         c = c,         d = d/~fth,    e = e/~fth,    f = f/~fth ],/*36*/        [ a = a/~fth,    b = b,         c = c/~fth,    d = d*~fth,    e = e,         f = f*~fth ],/*37*/        [ a = a*~fth,    b = b*~fth,    c = c,         d = d,         e = e,         f = f ],/*38*/     [ a = a,         b = b/~fth,    c = c*~fth,    d = d/~fth,    e = e*~fth,    f = f ],/*39*/     [ a = a/~fth*n6, b = b*~fth*n6, c = c/~fth*n6, d = d*~fth*n6, e = e/~fth*n6, f = f/~fth*n6 ],/*40*/     [ a = a,         b = b/~fth,    c = c*~fth,    d = d/~fth,    e = e*~fth,    f = f ],/*41*/     [ a = a*~fth,    b = b,         c = c/~fth,    d = d,         e = e,         f = f*~fth ],/*42*/        [ a = a,         b = b*~fth,    c = c,         d = d,         e = e/~fth,    f = f ],/*43*/     [ a = a/~fth,    b = b,         c = c*~fth,    d = d*~fth,    e = e*~fth,    f = f ],/*44*/     [ a = a*~fth,    b = b,         c = c,         d = d,         e = e,         f = f/~fth ],/*45*/        [ a = a/~fth,    b = b,         c = c,         d = d/~fth,    e = e/~fth,    f = f ],/*46*/     [ a = a,         b = b/~fth,    c = c/~fth,    d = d*~fth,    e = e*~fth,    f = f ],/*47*/     [ a = a,         b = b*~fth,    c = c*~fth,    d = d/~fth,    e = e,         f = f ],/*48*/     [ a = a,         b = b,         c = c/~fth,    d = d*~fth,    e = e,         f = f ],/*49*/     [ a = a,         b = b,         c = c*~fth,    d = d,         e = e/~fth,    f = f*~fth ],/*50*/        [ a = a*~fth,    b = b/~fth,    c = c,         d = d,         e = e*~fth,    f = f/~fth ],/*51*/        [ a = a/~fth,    b = b,         c = c,         d = d/~fth,    e = e/~fth,    f = f*~fth ],/*52*/        [ a = a*~fth,    b = b,         c = c/~fth,    d = d*~fth,    e = e,         f = f/~fth ],/*53*/        [ a = a,         b = b*~fth,    c = c,         d = d,         e = e,         f = f ],/*54*/     [ a = a/~fth*n7, b = b/~fth*n7, c = c*~fth*n7, d = d/~fth*n7, e = e*~fth*n7, f = f*~fth*n7 ],/*55*/     [ a = a,         b = b,         c = c,         d = d*~fth,    e = e/~fth,    f = f ],/*56*/     [ a = a*~fth,    b = b,         c = c,         d = d,         e = e,         f = f/~fth ],/*57*/        [ a = a,         b = b*~fth,    c = c/~fth,    d = d,         e = e*~fth,    f = f ],/*58*/     [ a = a/~fth,    b = b,         c = c*~fth,    d = d/~fth,    e = e,         f = f*~fth ],/*59*/        [ a = a*~fth,    b = b,         c = c/~fth,    d = d,         e = e,         f = f/~fth ],/*60*/        [ a = a/~fth,    b = b,         c = c,         d = d,         e = e,         f = f*~fth ],/*61*/        [ a = a*~fth,    b = b,         c = c,         d = d,         e = e,         f = f ],/*62*/     [ a = a/~fth*n8, b = b/~fth*n8, c = c*~fth*n8, d = d*~fth*n8, e = e/~fth*n8, f = f/~fth*n8 ],/*63*/     [ a = a,         b = b*~fth,    c = c/~fth,    d = d,         e = e,         f = f*~fth ],/*64*/        [ a = a*~fth*n9, b = b/~fth*n9, c = c*~fth*n9, d = d/~fth*n9, e = e*~fth*n9, f = f/~fth*n9 ]]
260                                                 ++Array.fill((~gsinenum*2 -1), {[/*1*/  [ a = a,         b = b*~fth,    c = c,         d = d*~fth,    e = e,         f = f*~fth ],/*2*/ [ a = a/~fth*n1, b = b/~fth*n1, c = c/~fth*n1, d = d/~fth*n1, e = e/~fth*n1, f = f/~fth*n1 ],/*3*/      [ a = a,         b = b*~fth,    c = c,         d = d,         e = e,         f = f*~fth  ],/*4*/        [ a = a*~fth,    b = b/~fth,    c = c,         d = d,         e = e*~fth,    f = f/~fth  ],/*5*/        [ a = a/~fth,    b = b*~fth,    c = c,         d = d*~fth,    e = e,         f = f*~fth ],/*6*/ [ a = a*~fth,    b = b,         c = c*~fth,    d = d/~fth,    e = e,         f = f/~fth  ],/*7*/        [ a = a/~fth,    b = b/~fth,    c = c/~fth,    d = d,         e = e,         f = f ],/*8*/      [ a = a,         b = b*~fth,    c = c,         d = d,         e = e/~fth,    f = f ],/*9*/      [ a = a*~fth,    b = b,         c = c,         d = d*~fth,    e = e*~fth,    f = f*~fth ],/*10*/        [ a = a,         b = b,         c = c*~fth,    d = d/~fth,    e = e,         f = f ],/*11*/     [ a = a/~fth,    b = b/~fth,    c = c/~fth,    d = d*~fth,    e = e,         f = f ],/*12*/     [ a = a*~fth*n2, b = b*~fth*n2, c = c*~fth*n2, d = d/~fth*n2, e = e/~fth*n2, f = f/~fth*n2 ],/*13*/     [ a = a,         b = b,         c = c,         d = d*~fth,    e = e,         f = f*~fth ],/*14*/        [ a = a,         b = b/~fth,    c = c,         d = d,         e = e*~fth,    f = f],/*15*/      [ a = a/~fth,    b = b,         c = c/~fth,    d = d,         e = e/~fth,    f = f/~fth ],/*16*/        [ a = a,         b = b,         c = c*~fth,    d = d/~fth,    e = e,         f = f ],/*17*/     [ a = a,         b = b*~fth,    c = c,         d = d,         e = e,         f = f*~fth],/*18*/ [ a = a*~fth*n3, b = b/~fth*n3, c = c/~fth*n3, d = d*~fth*n3, e = e*~fth*n3, f = f/~fth*n3 ],/*19*/     [ a = a/~fth,    b = b,         c = c,         d = d/~fth,    e = e,         f = f*~fth ],/*20*/        [ a = a*~fth,    b = b*~fth,    c = c,         d = d,         e = e/~fth,    f = f/~fth ],/*21*/        [ a = a,         b = b/~fth,    c = c*~fth,    d = d,         e = e,         f = f*~fth ],/*22*/        [ a = a,         b = b,         c = c/~fth,    d = d*~fth,    e = e,         f = f ],/*23*/     [ a = a,         b = b,         c = c,         d = d/~fth,    e = e,         f = f/~fth ],/*24*/        [ a = a/~fth,    b = b,         c = c,         d = d,         e = e,         f = f*~fth ],/*25*/        [ a = a*~fth,    b = b*~fth,    c = c*~fth,    d = d,         e = e,         f = f ],/*26*/     [ a = a,         b = b/~fth,    c = c/~fth,    d = d*~fth,    e = e*~fth,    f = f ],/*27*/     [ a = a,         b = b,         c = c,         d = d/~fth,    e = e/~fth,    f = f ],/*28*/     [ a = a/~fth*n4, b = b*~fth*n4, c = c*~fth*n4, d = d*~fth*n4, e = e*~fth*n4, f = f/~fth*n4 ],/*29*/     [ a = a,         b = b,         c = c/~fth,    d = d/~fth,    e = e,         f = f ],/*30*/     [ a = a*~fth*n5, b = b/~fth*n5, c = c*~fth*n5, d = d*~fth*n5, e = e/~fth*n5, f = f*~fth*n5 ],/*31*/     [ a = a/~fth,    b = b*~fth,    c = c,         d = d,         e = e,         f = f/~fth ],/*32*/        [ a = a,         b = b/~fth,    c = c,         d = d,         e = e*~fth,    f = f ],/*33*/     [ a = a*~fth,    b = b*~fth,    c = c,         d = d,         e = e/~fth,    f = f ],/*34*/     [ a = a/~fth,    b = b/~fth,    c = c,         d = d,         e = e*~fth,    f = f*~fth ],/*35*/        [ a = a*~fth,    b = b,         c = c,         d = d/~fth,    e = e/~fth,    f = f/~fth ],/*36*/        [ a = a/~fth,    b = b,         c = c/~fth,    d = d*~fth,    e = e,         f = f*~fth ],/*37*/        [ a = a*~fth,    b = b*~fth,    c = c,         d = d,         e = e,         f = f ],/*38*/     [ a = a,         b = b/~fth,    c = c*~fth,    d = d/~fth,    e = e*~fth,    f = f ],/*39*/     [ a = a/~fth*n6, b = b*~fth*n6, c = c/~fth*n6, d = d*~fth*n6, e = e/~fth*n6, f = f/~fth*n6 ],/*40*/     [ a = a,         b = b/~fth,    c = c*~fth,    d = d/~fth,    e = e*~fth,    f = f ],/*41*/     [ a = a*~fth,    b = b,         c = c/~fth,    d = d,         e = e,         f = f*~fth ],/*42*/        [ a = a,         b = b*~fth,    c = c,         d = d,         e = e/~fth,    f = f ],/*43*/     [ a = a/~fth,    b = b,         c = c*~fth,    d = d*~fth,    e = e*~fth,    f = f ],/*44*/     [ a = a*~fth,    b = b,         c = c,         d = d,         e = e,         f = f/~fth ],/*45*/        [ a = a/~fth,    b = b,         c = c,         d = d/~fth,    e = e/~fth,    f = f ],/*46*/     [ a = a,         b = b/~fth,    c = c/~fth,    d = d*~fth,    e = e*~fth,    f = f ],/*47*/     [ a = a,         b = b*~fth,    c = c*~fth,    d = d/~fth,    e = e,         f = f ],/*48*/     [ a = a,         b = b,         c = c/~fth,    d = d*~fth,    e = e,         f = f ],/*49*/     [ a = a,         b = b,         c = c*~fth,    d = d,         e = e/~fth,    f = f*~fth ],/*50*/        [ a = a*~fth,    b = b/~fth,    c = c,         d = d,         e = e*~fth,    f = f/~fth ],/*51*/        [ a = a/~fth,    b = b,         c = c,         d = d/~fth,    e = e/~fth,    f = f*~fth ],/*52*/        [ a = a*~fth,    b = b,         c = c/~fth,    d = d*~fth,    e = e,         f = f/~fth ],/*53*/        [ a = a,         b = b*~fth,    c = c,         d = d,         e = e,         f = f ],/*54*/     [ a = a/~fth*n7, b = b/~fth*n7, c = c*~fth*n7, d = d/~fth*n7, e = e*~fth*n7, f = f*~fth*n7 ],/*55*/     [ a = a,         b = b,         c = c,         d = d*~fth,    e = e/~fth,    f = f ],/*56*/     [ a = a*~fth,    b = b,         c = c,         d = d,         e = e,         f = f/~fth ],/*57*/        [ a = a,         b = b*~fth,    c = c/~fth,    d = d,         e = e*~fth,    f = f ],/*58*/     [ a = a/~fth,    b = b,         c = c*~fth,    d = d/~fth,    e = e,         f = f*~fth ],/*59*/        [ a = a*~fth,    b = b,         c = c/~fth,    d = d,         e = e,         f = f/~fth ],/*60*/        [ a = a/~fth,    b = b,         c = c,         d = d,         e = e,         f = f*~fth ],/*61*/        [ a = a*~fth,    b = b,         c = c,         d = d,         e = e,         f = f ],/*62*/     [ a = a/~fth*n8, b = b/~fth*n8, c = c*~fth*n8, d = d*~fth*n8, e = e/~fth*n8, f = f/~fth*n8 ],/*63*/     [ a = a,         b = b*~fth,    c = c/~fth,    d = d,         e = e,         f = f*~fth ],/*64*/        [ a = a*~fth*n9, b = b/~fth*n9, c = c*~fth*n9, d = d/~fth*n9, e = e*~fth*n9, f = f/~fth*n9 ]]
261                                         }).flatten, inf);
262                                         dseq2r = Dseq([[/*1*/   #a,b,c,d,e,f=[ ~a,~b,~c,~d,~e,~f  ],/*2*/       [ a = a/~fth*n1, b = b/~fth*n1, c = c/~fth*n1, d = d/~fth*n1, e = e/~fth*n1, f = f/~fth*n1 ],/*3*/      [ a = a,         b = b*~fth,    c = c,         d = d,         e = e,         f = f*~fth  ],/*4*/        [ a = a*~fth,    b = b/~fth,    c = c,         d = d,         e = e*~fth,    f = f/~fth  ],/*5*/        [ a = a/~fth,    b = b*~fth,    c = c,         d = d*~fth,    e = e,         f = f*~fth ],/*6*/ [ a = a*~fth,    b = b,         c = c*~fth,    d = d/~fth,    e = e,         f = f/~fth  ],/*7*/        [ a = a/~fth,    b = b/~fth,    c = c/~fth,    d = d,         e = e,         f = f ],/*8*/      [ a = a,         b = b*~fth,    c = c,         d = d,         e = e/~fth,    f = f ],/*9*/      [ a = a*~fth,    b = b,         c = c,         d = d*~fth,    e = e*~fth,    f = f*~fth ],/*10*/        [ a = a,         b = b,         c = c*~fth,    d = d/~fth,    e = e,         f = f ],/*11*/     [ a = a/~fth,    b = b/~fth,    c = c/~fth,    d = d*~fth,    e = e,         f = f ],/*12*/     [ a = a*~fth*n2, b = b*~fth*n2, c = c*~fth*n2, d = d/~fth*n2, e = e/~fth*n2, f = f/~fth*n2 ],/*13*/     [ a = a,         b = b,         c = c,         d = d*~fth,    e = e,         f = f*~fth ],/*14*/        [ a = a,         b = b/~fth,    c = c,         d = d,         e = e*~fth,    f = f],/*15*/      [ a = a/~fth,    b = b,         c = c/~fth,    d = d,         e = e/~fth,    f = f/~fth ],/*16*/        [ a = a,         b = b,         c = c*~fth,    d = d/~fth,    e = e,         f = f ],/*17*/     [ a = a,         b = b*~fth,    c = c,         d = d,         e = e,         f = f*~fth],/*18*/ [ a = a*~fth*n3, b = b/~fth*n3, c = c/~fth*n3, d = d*~fth*n3, e = e*~fth*n3, f = f/~fth*n3 ],/*19*/     [ a = a/~fth,    b = b,         c = c,         d = d/~fth,    e = e,         f = f*~fth ],/*20*/        [ a = a*~fth,    b = b*~fth,    c = c,         d = d,         e = e/~fth,    f = f/~fth ],/*21*/        [ a = a,         b = b/~fth,    c = c*~fth,    d = d,         e = e,         f = f*~fth ],/*22*/        [ a = a,         b = b,         c = c/~fth,    d = d*~fth,    e = e,         f = f ],/*23*/     [ a = a,         b = b,         c = c,         d = d/~fth,    e = e,         f = f/~fth ],/*24*/        [ a = a/~fth,    b = b,         c = c,         d = d,         e = e,         f = f*~fth ],/*25*/        [ a = a*~fth,    b = b*~fth,    c = c*~fth,    d = d,         e = e,         f = f ],/*26*/     [ a = a,         b = b/~fth,    c = c/~fth,    d = d*~fth,    e = e*~fth,    f = f ],/*27*/     [ a = a,         b = b,         c = c,         d = d/~fth,    e = e/~fth,    f = f ],/*28*/     [ a = a/~fth*n4, b = b*~fth*n4, c = c*~fth*n4, d = d*~fth*n4, e = e*~fth*n4, f = f/~fth*n4 ],/*29*/     [ a = a,         b = b,         c = c/~fth,    d = d/~fth,    e = e,         f = f ],/*30*/     [ a = a*~fth*n5, b = b/~fth*n5, c = c*~fth*n5, d = d*~fth*n5, e = e/~fth*n5, f = f*~fth*n5 ],/*31*/     [ a = a/~fth,    b = b*~fth,    c = c,         d = d,         e = e,         f = f/~fth ],/*32*/        [ a = a,         b = b/~fth,    c = c,         d = d,         e = e*~fth,    f = f ],/*33*/     [ a = a*~fth,    b = b*~fth,    c = c,         d = d,         e = e/~fth,    f = f ],/*34*/     [ a = a/~fth,    b = b/~fth,    c = c,         d = d,         e = e*~fth,    f = f*~fth ],/*35*/        [ a = a*~fth,    b = b,         c = c,         d = d/~fth,    e = e/~fth,    f = f/~fth ],/*36*/        [ a = a/~fth,    b = b,         c = c/~fth,    d = d*~fth,    e = e,         f = f*~fth ],/*37*/        [ a = a*~fth,    b = b*~fth,    c = c,         d = d,         e = e,         f = f ],/*38*/     [ a = a,         b = b/~fth,    c = c*~fth,    d = d/~fth,    e = e*~fth,    f = f ],/*39*/     [ a = a/~fth*n6, b = b*~fth*n6, c = c/~fth*n6, d = d*~fth*n6, e = e/~fth*n6, f = f/~fth*n6 ],/*40*/     [ a = a,         b = b/~fth,    c = c*~fth,    d = d/~fth,    e = e*~fth,    f = f ],/*41*/     [ a = a*~fth,    b = b,         c = c/~fth,    d = d,         e = e,         f = f*~fth ],/*42*/        [ a = a,         b = b*~fth,    c = c,         d = d,         e = e/~fth,    f = f ],/*43*/     [ a = a/~fth,    b = b,         c = c*~fth,    d = d*~fth,    e = e*~fth,    f = f ],/*44*/     [ a = a*~fth,    b = b,         c = c,         d = d,         e = e,         f = f/~fth ],/*45*/        [ a = a/~fth,    b = b,         c = c,         d = d/~fth,    e = e/~fth,    f = f ],/*46*/     [ a = a,         b = b/~fth,    c = c/~fth,    d = d*~fth,    e = e*~fth,    f = f ],/*47*/     [ a = a,         b = b*~fth,    c = c*~fth,    d = d/~fth,    e = e,         f = f ],/*48*/     [ a = a,         b = b,         c = c/~fth,    d = d*~fth,    e = e,         f = f ],/*49*/     [ a = a,         b = b,         c = c*~fth,    d = d,         e = e/~fth,    f = f*~fth ],/*50*/        [ a = a*~fth,    b = b/~fth,    c = c,         d = d,         e = e*~fth,    f = f/~fth ],/*51*/        [ a = a/~fth,    b = b,         c = c,         d = d/~fth,    e = e/~fth,    f = f*~fth ],/*52*/        [ a = a*~fth,    b = b,         c = c/~fth,    d = d*~fth,    e = e,         f = f/~fth ],/*53*/        [ a = a,         b = b*~fth,    c = c,         d = d,         e = e,         f = f ],/*54*/     [ a = a/~fth*n7, b = b/~fth*n7, c = c*~fth*n7, d = d/~fth*n7, e = e*~fth*n7, f = f*~fth*n7 ],/*55*/     [ a = a,         b = b,         c = c,         d = d*~fth,    e = e/~fth,    f = f ],/*56*/     [ a = a*~fth,    b = b,         c = c,         d = d,         e = e,         f = f/~fth ],/*57*/        [ a = a,         b = b*~fth,    c = c/~fth,    d = d,         e = e*~fth,    f = f ],/*58*/     [ a = a/~fth,    b = b,         c = c*~fth,    d = d/~fth,    e = e,         f = f*~fth ],/*59*/        [ a = a*~fth,    b = b,         c = c/~fth,    d = d,         e = e,         f = f/~fth ],/*60*/        [ a = a/~fth,    b = b,         c = c,         d = d,         e = e,         f = f*~fth ],/*61*/        [ a = a*~fth,    b = b,         c = c,         d = d,         e = e,         f = f ],/*62*/     [ a = a/~fth*n8, b = b/~fth*n8, c = c*~fth*n8, d = d*~fth*n8, e = e/~fth*n8, f = f/~fth*n8 ],/*63*/     [ a = a,         b = b*~fth,    c = c/~fth,    d = d,         e = e,         f = f*~fth ],/*64*/        [ a = a*~fth*n9, b = b/~fth*n9, c = c*~fth*n9, d = d/~fth*n9, e = e*~fth*n9, f = f/~fth*n9 ]]
263                                                 ++Array.fill((~gsinenum*2 -1), {[/*1*/  [ a = a,         b = b*~fth,    c = c,         d = d*~fth,    e = e,         f = f*~fth ],/*2*/ [ a = a/~fth*n1, b = b/~fth*n1, c = c/~fth*n1, d = d/~fth*n1, e = e/~fth*n1, f = f/~fth*n1 ],/*3*/      [ a = a,         b = b*~fth,    c = c,         d = d,         e = e,         f = f*~fth  ],/*4*/        [ a = a*~fth,    b = b/~fth,    c = c,         d = d,         e = e*~fth,    f = f/~fth  ],/*5*/        [ a = a/~fth,    b = b*~fth,    c = c,         d = d*~fth,    e = e,         f = f*~fth ],/*6*/ [ a = a*~fth,    b = b,         c = c*~fth,    d = d/~fth,    e = e,         f = f/~fth  ],/*7*/        [ a = a/~fth,    b = b/~fth,    c = c/~fth,    d = d,         e = e,         f = f ],/*8*/      [ a = a,         b = b*~fth,    c = c,         d = d,         e = e/~fth,    f = f ],/*9*/      [ a = a*~fth,    b = b,         c = c,         d = d*~fth,    e = e*~fth,    f = f*~fth ],/*10*/        [ a = a,         b = b,         c = c*~fth,    d = d/~fth,    e = e,         f = f ],/*11*/     [ a = a/~fth,    b = b/~fth,    c = c/~fth,    d = d*~fth,    e = e,         f = f ],/*12*/     [ a = a*~fth*n2, b = b*~fth*n2, c = c*~fth*n2, d = d/~fth*n2, e = e/~fth*n2, f = f/~fth*n2 ],/*13*/     [ a = a,         b = b,         c = c,         d = d*~fth,    e = e,         f = f*~fth ],/*14*/        [ a = a,         b = b/~fth,    c = c,         d = d,         e = e*~fth,    f = f],/*15*/      [ a = a/~fth,    b = b,         c = c/~fth,    d = d,         e = e/~fth,    f = f/~fth ],/*16*/        [ a = a,         b = b,         c = c*~fth,    d = d/~fth,    e = e,         f = f ],/*17*/     [ a = a,         b = b*~fth,    c = c,         d = d,         e = e,         f = f*~fth],/*18*/ [ a = a*~fth*n3, b = b/~fth*n3, c = c/~fth*n3, d = d*~fth*n3, e = e*~fth*n3, f = f/~fth*n3 ],/*19*/     [ a = a/~fth,    b = b,         c = c,         d = d/~fth,    e = e,         f = f*~fth ],/*20*/        [ a = a*~fth,    b = b*~fth,    c = c,         d = d,         e = e/~fth,    f = f/~fth ],/*21*/        [ a = a,         b = b/~fth,    c = c*~fth,    d = d,         e = e,         f = f*~fth ],/*22*/        [ a = a,         b = b,         c = c/~fth,    d = d*~fth,    e = e,         f = f ],/*23*/     [ a = a,         b = b,         c = c,         d = d/~fth,    e = e,         f = f/~fth ],/*24*/        [ a = a/~fth,    b = b,         c = c,         d = d,         e = e,         f = f*~fth ],/*25*/        [ a = a*~fth,    b = b*~fth,    c = c*~fth,    d = d,         e = e,         f = f ],/*26*/     [ a = a,         b = b/~fth,    c = c/~fth,    d = d*~fth,    e = e*~fth,    f = f ],/*27*/     [ a = a,         b = b,         c = c,         d = d/~fth,    e = e/~fth,    f = f ],/*28*/     [ a = a/~fth*n4, b = b*~fth*n4, c = c*~fth*n4, d = d*~fth*n4, e = e*~fth*n4, f = f/~fth*n4 ],/*29*/     [ a = a,         b = b,         c = c/~fth,    d = d/~fth,    e = e,         f = f ],/*30*/     [ a = a*~fth*n5, b = b/~fth*n5, c = c*~fth*n5, d = d*~fth*n5, e = e/~fth*n5, f = f*~fth*n5 ],/*31*/     [ a = a/~fth,    b = b*~fth,    c = c,         d = d,         e = e,         f = f/~fth ],/*32*/        [ a = a,         b = b/~fth,    c = c,         d = d,         e = e*~fth,    f = f ],/*33*/     [ a = a*~fth,    b = b*~fth,    c = c,         d = d,         e = e/~fth,    f = f ],/*34*/     [ a = a/~fth,    b = b/~fth,    c = c,         d = d,         e = e*~fth,    f = f*~fth ],/*35*/        [ a = a*~fth,    b = b,         c = c,         d = d/~fth,    e = e/~fth,    f = f/~fth ],/*36*/        [ a = a/~fth,    b = b,         c = c/~fth,    d = d*~fth,    e = e,         f = f*~fth ],/*37*/        [ a = a*~fth,    b = b*~fth,    c = c,         d = d,         e = e,         f = f ],/*38*/     [ a = a,         b = b/~fth,    c = c*~fth,    d = d/~fth,    e = e*~fth,    f = f ],/*39*/     [ a = a/~fth*n6, b = b*~fth*n6, c = c/~fth*n6, d = d*~fth*n6, e = e/~fth*n6, f = f/~fth*n6 ],/*40*/     [ a = a,         b = b/~fth,    c = c*~fth,    d = d/~fth,    e = e*~fth,    f = f ],/*41*/     [ a = a*~fth,    b = b,         c = c/~fth,    d = d,         e = e,         f = f*~fth ],/*42*/        [ a = a,         b = b*~fth,    c = c,         d = d,         e = e/~fth,    f = f ],/*43*/     [ a = a/~fth,    b = b,         c = c*~fth,    d = d*~fth,    e = e*~fth,    f = f ],/*44*/     [ a = a*~fth,    b = b,         c = c,         d = d,         e = e,         f = f/~fth ],/*45*/        [ a = a/~fth,    b = b,         c = c,         d = d/~fth,    e = e/~fth,    f = f ],/*46*/     [ a = a,         b = b/~fth,    c = c/~fth,    d = d*~fth,    e = e*~fth,    f = f ],/*47*/     [ a = a,         b = b*~fth,    c = c*~fth,    d = d/~fth,    e = e,         f = f ],/*48*/     [ a = a,         b = b,         c = c/~fth,    d = d*~fth,    e = e,         f = f ],/*49*/     [ a = a,         b = b,         c = c*~fth,    d = d,         e = e/~fth,    f = f*~fth ],/*50*/        [ a = a*~fth,    b = b/~fth,    c = c,         d = d,         e = e*~fth,    f = f/~fth ],/*51*/        [ a = a/~fth,    b = b,         c = c,         d = d/~fth,    e = e/~fth,    f = f*~fth ],/*52*/        [ a = a*~fth,    b = b,         c = c/~fth,    d = d*~fth,    e = e,         f = f/~fth ],/*53*/        [ a = a,         b = b*~fth,    c = c,         d = d,         e = e,         f = f ],/*54*/     [ a = a/~fth*n7, b = b/~fth*n7, c = c*~fth*n7, d = d/~fth*n7, e = e*~fth*n7, f = f*~fth*n7 ],/*55*/     [ a = a,         b = b,         c = c,         d = d*~fth,    e = e/~fth,    f = f ],/*56*/     [ a = a*~fth,    b = b,         c = c,         d = d,         e = e,         f = f/~fth ],/*57*/        [ a = a,         b = b*~fth,    c = c/~fth,    d = d,         e = e*~fth,    f = f ],/*58*/     [ a = a/~fth,    b = b,         c = c*~fth,    d = d/~fth,    e = e,         f = f*~fth ],/*59*/        [ a = a*~fth,    b = b,         c = c/~fth,    d = d,         e = e,         f = f/~fth ],/*60*/        [ a = a/~fth,    b = b,         c = c,         d = d,         e = e,         f = f*~fth ],/*61*/        [ a = a*~fth,    b = b,         c = c,         d = d,         e = e,         f = f ],/*62*/     [ a = a/~fth*n8, b = b/~fth*n8, c = c*~fth*n8, d = d*~fth*n8, e = e/~fth*n8, f = f/~fth*n8 ],/*63*/     [ a = a,         b = b*~fth,    c = c/~fth,    d = d,         e = e,         f = f*~fth ],/*64*/        [ a = a*~fth*n9, b = b/~fth*n9, c = c*~fth*n9, d = d/~fth*n9, e = e*~fth*n9, f = f/~fth*n9 ]]
264                                         }).flatten].flatten.reverse, inf);
265                                         #n1,n2,n3,n4,n5,n6,n7,n8,n9=[~ngm1,~ngm1,~ngm1,~ngm1,~ngm1,~ngm1,~ngm1,~ngm1,~ngm1];
266                                         dseq1f = Dseq([/*1*/    #a,b,c,d,e,f=[ ~a,~b,~c,~d,~e,~f  ],/*2*/       [ a = a/~fth*n1, b = b/~fth*n1, c = c/~fth*n1, d = d/~fth*n1, e = e/~fth*n1, f = f/~fth*n1 ],/*3*/      [ a = a,         b = b*~fth,    c = c,         d = d,         e = e,         f = f*~fth  ],/*4*/        [ a = a*~fth,    b = b/~fth,    c = c,         d = d,         e = e*~fth,    f = f/~fth  ],/*5*/        [ a = a/~fth,    b = b*~fth,    c = c,         d = d*~fth,    e = e,         f = f*~fth ],/*6*/ [ a = a*~fth,    b = b,         c = c*~fth,    d = d/~fth,    e = e,         f = f/~fth  ],/*7*/        [ a = a/~fth,    b = b/~fth,    c = c/~fth,    d = d,         e = e,         f = f ],/*8*/      [ a = a,         b = b*~fth,    c = c,         d = d,         e = e/~fth,    f = f ],/*9*/      [ a = a*~fth,    b = b,         c = c,         d = d*~fth,    e = e*~fth,    f = f*~fth ],/*10*/        [ a = a,         b = b,         c = c*~fth,    d = d/~fth,    e = e,         f = f ],/*11*/     [ a = a/~fth,    b = b/~fth,    c = c/~fth,    d = d*~fth,    e = e,         f = f ],/*12*/     [ a = a*~fth*n2, b = b*~fth*n2, c = c*~fth*n2, d = d/~fth*n2, e = e/~fth*n2, f = f/~fth*n2 ],/*13*/     [ a = a,         b = b,         c = c,         d = d*~fth,    e = e,         f = f*~fth ],/*14*/        [ a = a,         b = b/~fth,    c = c,         d = d,         e = e*~fth,    f = f],/*15*/      [ a = a/~fth,    b = b,         c = c/~fth,    d = d,         e = e/~fth,    f = f/~fth ],/*16*/        [ a = a,         b = b,         c = c*~fth,    d = d/~fth,    e = e,         f = f ],/*17*/     [ a = a,         b = b*~fth,    c = c,         d = d,         e = e,         f = f*~fth],/*18*/ [ a = a*~fth*n3, b = b/~fth*n3, c = c/~fth*n3, d = d*~fth*n3, e = e*~fth*n3, f = f/~fth*n3 ],/*19*/     [ a = a/~fth,    b = b,         c = c,         d = d/~fth,    e = e,         f = f*~fth ],/*20*/        [ a = a*~fth,    b = b*~fth,    c = c,         d = d,         e = e/~fth,    f = f/~fth ],/*21*/        [ a = a,         b = b/~fth,    c = c*~fth,    d = d,         e = e,         f = f*~fth ],/*22*/        [ a = a,         b = b,         c = c/~fth,    d = d*~fth,    e = e,         f = f ],/*23*/     [ a = a,         b = b,         c = c,         d = d/~fth,    e = e,         f = f/~fth ],/*24*/        [ a = a/~fth,    b = b,         c = c,         d = d,         e = e,         f = f*~fth ],/*25*/        [ a = a*~fth,    b = b*~fth,    c = c*~fth,    d = d,         e = e,         f = f ],/*26*/     [ a = a,         b = b/~fth,    c = c/~fth,    d = d*~fth,    e = e*~fth,    f = f ],/*27*/     [ a = a,         b = b,         c = c,         d = d/~fth,    e = e/~fth,    f = f ],/*28*/     [ a = a/~fth*n4, b = b*~fth*n4, c = c*~fth*n4, d = d*~fth*n4, e = e*~fth*n4, f = f/~fth*n4 ],/*29*/     [ a = a,         b = b,         c = c/~fth,    d = d/~fth,    e = e,         f = f ],/*30*/     [ a = a*~fth*n5, b = b/~fth*n5, c = c*~fth*n5, d = d*~fth*n5, e = e/~fth*n5, f = f*~fth*n5 ],/*31*/     [ a = a/~fth,    b = b*~fth,    c = c,         d = d,         e = e,         f = f/~fth ],/*32*/        [ a = a,         b = b/~fth,    c = c,         d = d,         e = e*~fth,    f = f ],/*33*/     [ a = a*~fth,    b = b*~fth,    c = c,         d = d,         e = e/~fth,    f = f ],/*34*/     [ a = a/~fth,    b = b/~fth,    c = c,         d = d,         e = e*~fth,    f = f*~fth ],/*35*/        [ a = a*~fth,    b = b,         c = c,         d = d/~fth,    e = e/~fth,    f = f/~fth ],/*36*/        [ a = a/~fth,    b = b,         c = c/~fth,    d = d*~fth,    e = e,         f = f*~fth ],/*37*/        [ a = a*~fth,    b = b*~fth,    c = c,         d = d,         e = e,         f = f ],/*38*/     [ a = a,         b = b/~fth,    c = c*~fth,    d = d/~fth,    e = e*~fth,    f = f ],/*39*/     [ a = a/~fth*n6, b = b*~fth*n6, c = c/~fth*n6, d = d*~fth*n6, e = e/~fth*n6, f = f/~fth*n6 ],/*40*/     [ a = a,         b = b/~fth,    c = c*~fth,    d = d/~fth,    e = e*~fth,    f = f ],/*41*/     [ a = a*~fth,    b = b,         c = c/~fth,    d = d,         e = e,         f = f*~fth ],/*42*/        [ a = a,         b = b*~fth,    c = c,         d = d,         e = e/~fth,    f = f ],/*43*/     [ a = a/~fth,    b = b,         c = c*~fth,    d = d*~fth,    e = e*~fth,    f = f ],/*44*/     [ a = a*~fth,    b = b,         c = c,         d = d,         e = e,         f = f/~fth ],/*45*/        [ a = a/~fth,    b = b,         c = c,         d = d/~fth,    e = e/~fth,    f = f ],/*46*/     [ a = a,         b = b/~fth,    c = c/~fth,    d = d*~fth,    e = e*~fth,    f = f ],/*47*/     [ a = a,         b = b*~fth,    c = c*~fth,    d = d/~fth,    e = e,         f = f ],/*48*/     [ a = a,         b = b,         c = c/~fth,    d = d*~fth,    e = e,         f = f ],/*49*/     [ a = a,         b = b,         c = c*~fth,    d = d,         e = e/~fth,    f = f*~fth ],/*50*/        [ a = a*~fth,    b = b/~fth,    c = c,         d = d,         e = e*~fth,    f = f/~fth ],/*51*/        [ a = a/~fth,    b = b,         c = c,         d = d/~fth,    e = e/~fth,    f = f*~fth ],/*52*/        [ a = a*~fth,    b = b,         c = c/~fth,    d = d*~fth,    e = e,         f = f/~fth ],/*53*/        [ a = a,         b = b*~fth,    c = c,         d = d,         e = e,         f = f ],/*54*/     [ a = a/~fth*n7, b = b/~fth*n7, c = c*~fth*n7, d = d/~fth*n7, e = e*~fth*n7, f = f*~fth*n7 ],/*55*/     [ a = a,         b = b,         c = c,         d = d*~fth,    e = e/~fth,    f = f ],/*56*/     [ a = a*~fth,    b = b,         c = c,         d = d,         e = e,         f = f/~fth ],/*57*/        [ a = a,         b = b*~fth,    c = c/~fth,    d = d,         e = e*~fth,    f = f ],/*58*/     [ a = a/~fth,    b = b,         c = c*~fth,    d = d/~fth,    e = e,         f = f*~fth ],/*59*/        [ a = a*~fth,    b = b,         c = c/~fth,    d = d,         e = e,         f = f/~fth ],/*60*/        [ a = a/~fth,    b = b,         c = c,         d = d,         e = e,         f = f*~fth ],/*61*/        [ a = a*~fth,    b = b,         c = c,         d = d,         e = e,         f = f ],/*62*/     [ a = a/~fth*n8, b = b/~fth*n8, c = c*~fth*n8, d = d*~fth*n8, e = e/~fth*n8, f = f/~fth*n8 ],/*63*/     [ a = a,         b = b*~fth,    c = c/~fth,    d = d,         e = e,         f = f*~fth ],/*64*/        [ a = a*~fth*n9, b = b/~fth*n9, c = c*~fth*n9, d = d/~fth*n9, e = e*~fth*n9, f = f/~fth*n9 ]]
267                                                 ++Array.fill((~gsinenum -1), {[/*1*/    [ a = a,         b = b*~fth,    c = c,         d = d*~fth,    e = e,         f = f*~fth ],/*2*/ [ a = a/~fth*n1, b = b/~fth*n1, c = c/~fth*n1, d = d/~fth*n1, e = e/~fth*n1, f = f/~fth*n1 ],/*3*/      [ a = a,         b = b*~fth,    c = c,         d = d,         e = e,         f = f*~fth  ],/*4*/        [ a = a*~fth,    b = b/~fth,    c = c,         d = d,         e = e*~fth,    f = f/~fth  ],/*5*/        [ a = a/~fth,    b = b*~fth,    c = c,         d = d*~fth,    e = e,         f = f*~fth ],/*6*/ [ a = a*~fth,    b = b,         c = c*~fth,    d = d/~fth,    e = e,         f = f/~fth  ],/*7*/        [ a = a/~fth,    b = b/~fth,    c = c/~fth,    d = d,         e = e,         f = f ],/*8*/      [ a = a,         b = b*~fth,    c = c,         d = d,         e = e/~fth,    f = f ],/*9*/      [ a = a*~fth,    b = b,         c = c,         d = d*~fth,    e = e*~fth,    f = f*~fth ],/*10*/        [ a = a,         b = b,         c = c*~fth,    d = d/~fth,    e = e,         f = f ],/*11*/     [ a = a/~fth,    b = b/~fth,    c = c/~fth,    d = d*~fth,    e = e,         f = f ],/*12*/     [ a = a*~fth*n2, b = b*~fth*n2, c = c*~fth*n2, d = d/~fth*n2, e = e/~fth*n2, f = f/~fth*n2 ],/*13*/     [ a = a,         b = b,         c = c,         d = d*~fth,    e = e,         f = f*~fth ],/*14*/        [ a = a,         b = b/~fth,    c = c,         d = d,         e = e*~fth,    f = f],/*15*/      [ a = a/~fth,    b = b,         c = c/~fth,    d = d,         e = e/~fth,    f = f/~fth ],/*16*/        [ a = a,         b = b,         c = c*~fth,    d = d/~fth,    e = e,         f = f ],/*17*/     [ a = a,         b = b*~fth,    c = c,         d = d,         e = e,         f = f*~fth],/*18*/ [ a = a*~fth*n3, b = b/~fth*n3, c = c/~fth*n3, d = d*~fth*n3, e = e*~fth*n3, f = f/~fth*n3 ],/*19*/     [ a = a/~fth,    b = b,         c = c,         d = d/~fth,    e = e,         f = f*~fth ],/*20*/        [ a = a*~fth,    b = b*~fth,    c = c,         d = d,         e = e/~fth,    f = f/~fth ],/*21*/        [ a = a,         b = b/~fth,    c = c*~fth,    d = d,         e = e,         f = f*~fth ],/*22*/        [ a = a,         b = b,         c = c/~fth,    d = d*~fth,    e = e,         f = f ],/*23*/     [ a = a,         b = b,         c = c,         d = d/~fth,    e = e,         f = f/~fth ],/*24*/        [ a = a/~fth,    b = b,         c = c,         d = d,         e = e,         f = f*~fth ],/*25*/        [ a = a*~fth,    b = b*~fth,    c = c*~fth,    d = d,         e = e,         f = f ],/*26*/     [ a = a,         b = b/~fth,    c = c/~fth,    d = d*~fth,    e = e*~fth,    f = f ],/*27*/     [ a = a,         b = b,         c = c,         d = d/~fth,    e = e/~fth,    f = f ],/*28*/     [ a = a/~fth*n4, b = b*~fth*n4, c = c*~fth*n4, d = d*~fth*n4, e = e*~fth*n4, f = f/~fth*n4 ],/*29*/     [ a = a,         b = b,         c = c/~fth,    d = d/~fth,    e = e,         f = f ],/*30*/     [ a = a*~fth*n5, b = b/~fth*n5, c = c*~fth*n5, d = d*~fth*n5, e = e/~fth*n5, f = f*~fth*n5 ],/*31*/     [ a = a/~fth,    b = b*~fth,    c = c,         d = d,         e = e,         f = f/~fth ],/*32*/        [ a = a,         b = b/~fth,    c = c,         d = d,         e = e*~fth,    f = f ],/*33*/     [ a = a*~fth,    b = b*~fth,    c = c,         d = d,         e = e/~fth,    f = f ],/*34*/     [ a = a/~fth,    b = b/~fth,    c = c,         d = d,         e = e*~fth,    f = f*~fth ],/*35*/        [ a = a*~fth,    b = b,         c = c,         d = d/~fth,    e = e/~fth,    f = f/~fth ],/*36*/        [ a = a/~fth,    b = b,         c = c/~fth,    d = d*~fth,    e = e,         f = f*~fth ],/*37*/        [ a = a*~fth,    b = b*~fth,    c = c,         d = d,         e = e,         f = f ],/*38*/     [ a = a,         b = b/~fth,    c = c*~fth,    d = d/~fth,    e = e*~fth,    f = f ],/*39*/     [ a = a/~fth*n6, b = b*~fth*n6, c = c/~fth*n6, d = d*~fth*n6, e = e/~fth*n6, f = f/~fth*n6 ],/*40*/     [ a = a,         b = b/~fth,    c = c*~fth,    d = d/~fth,    e = e*~fth,    f = f ],/*41*/     [ a = a*~fth,    b = b,         c = c/~fth,    d = d,         e = e,         f = f*~fth ],/*42*/        [ a = a,         b = b*~fth,    c = c,         d = d,         e = e/~fth,    f = f ],/*43*/     [ a = a/~fth,    b = b,         c = c*~fth,    d = d*~fth,    e = e*~fth,    f = f ],/*44*/     [ a = a*~fth,    b = b,         c = c,         d = d,         e = e,         f = f/~fth ],/*45*/        [ a = a/~fth,    b = b,         c = c,         d = d/~fth,    e = e/~fth,    f = f ],/*46*/     [ a = a,         b = b/~fth,    c = c/~fth,    d = d*~fth,    e = e*~fth,    f = f ],/*47*/     [ a = a,         b = b*~fth,    c = c*~fth,    d = d/~fth,    e = e,         f = f ],/*48*/     [ a = a,         b = b,         c = c/~fth,    d = d*~fth,    e = e,         f = f ],/*49*/     [ a = a,         b = b,         c = c*~fth,    d = d,         e = e/~fth,    f = f*~fth ],/*50*/        [ a = a*~fth,    b = b/~fth,    c = c,         d = d,         e = e*~fth,    f = f/~fth ],/*51*/        [ a = a/~fth,    b = b,         c = c,         d = d/~fth,    e = e/~fth,    f = f*~fth ],/*52*/        [ a = a*~fth,    b = b,         c = c/~fth,    d = d*~fth,    e = e,         f = f/~fth ],/*53*/        [ a = a,         b = b*~fth,    c = c,         d = d,         e = e,         f = f ],/*54*/     [ a = a/~fth*n7, b = b/~fth*n7, c = c*~fth*n7, d = d/~fth*n7, e = e*~fth*n7, f = f*~fth*n7 ],/*55*/     [ a = a,         b = b,         c = c,         d = d*~fth,    e = e/~fth,    f = f ],/*56*/     [ a = a*~fth,    b = b,         c = c,         d = d,         e = e,         f = f/~fth ],/*57*/        [ a = a,         b = b*~fth,    c = c/~fth,    d = d,         e = e*~fth,    f = f ],/*58*/     [ a = a/~fth,    b = b,         c = c*~fth,    d = d/~fth,    e = e,         f = f*~fth ],/*59*/        [ a = a*~fth,    b = b,         c = c/~fth,    d = d,         e = e,         f = f/~fth ],/*60*/        [ a = a/~fth,    b = b,         c = c,         d = d,         e = e,         f = f*~fth ],/*61*/        [ a = a*~fth,    b = b,         c = c,         d = d,         e = e,         f = f ],/*62*/     [ a = a/~fth*n8, b = b/~fth*n8, c = c*~fth*n8, d = d*~fth*n8, e = e/~fth*n8, f = f/~fth*n8 ],/*63*/     [ a = a,         b = b*~fth,    c = c/~fth,    d = d,         e = e,         f = f*~fth ],/*64*/        [ a = a*~fth*n9, b = b/~fth*n9, c = c*~fth*n9, d = d/~fth*n9, e = e*~fth*n9, f = f/~fth*n9 ]]
268                                         }).flatten, inf);
269                                         dseq1r = Dseq([[/*1*/   #a,b,c,d,e,f=[ ~a,~b,~c,~d,~e,~f  ],/*2*/       [ a = a/~fth*n1, b = b/~fth*n1, c = c/~fth*n1, d = d/~fth*n1, e = e/~fth*n1, f = f/~fth*n1 ],/*3*/      [ a = a,         b = b*~fth,    c = c,         d = d,         e = e,         f = f*~fth  ],/*4*/        [ a = a*~fth,    b = b/~fth,    c = c,         d = d,         e = e*~fth,    f = f/~fth  ],/*5*/        [ a = a/~fth,    b = b*~fth,    c = c,         d = d*~fth,    e = e,         f = f*~fth ],/*6*/ [ a = a*~fth,    b = b,         c = c*~fth,    d = d/~fth,    e = e,         f = f/~fth  ],/*7*/        [ a = a/~fth,    b = b/~fth,    c = c/~fth,    d = d,         e = e,         f = f ],/*8*/      [ a = a,         b = b*~fth,    c = c,         d = d,         e = e/~fth,    f = f ],/*9*/      [ a = a*~fth,    b = b,         c = c,         d = d*~fth,    e = e*~fth,    f = f*~fth ],/*10*/        [ a = a,         b = b,         c = c*~fth,    d = d/~fth,    e = e,         f = f ],/*11*/     [ a = a/~fth,    b = b/~fth,    c = c/~fth,    d = d*~fth,    e = e,         f = f ],/*12*/     [ a = a*~fth*n2, b = b*~fth*n2, c = c*~fth*n2, d = d/~fth*n2, e = e/~fth*n2, f = f/~fth*n2 ],/*13*/     [ a = a,         b = b,         c = c,         d = d*~fth,    e = e,         f = f*~fth ],/*14*/        [ a = a,         b = b/~fth,    c = c,         d = d,         e = e*~fth,    f = f],/*15*/      [ a = a/~fth,    b = b,         c = c/~fth,    d = d,         e = e/~fth,    f = f/~fth ],/*16*/        [ a = a,         b = b,         c = c*~fth,    d = d/~fth,    e = e,         f = f ],/*17*/     [ a = a,         b = b*~fth,    c = c,         d = d,         e = e,         f = f*~fth],/*18*/ [ a = a*~fth*n3, b = b/~fth*n3, c = c/~fth*n3, d = d*~fth*n3, e = e*~fth*n3, f = f/~fth*n3 ],/*19*/     [ a = a/~fth,    b = b,         c = c,         d = d/~fth,    e = e,         f = f*~fth ],/*20*/        [ a = a*~fth,    b = b*~fth,    c = c,         d = d,         e = e/~fth,    f = f/~fth ],/*21*/        [ a = a,         b = b/~fth,    c = c*~fth,    d = d,         e = e,         f = f*~fth ],/*22*/        [ a = a,         b = b,         c = c/~fth,    d = d*~fth,    e = e,         f = f ],/*23*/     [ a = a,         b = b,         c = c,         d = d/~fth,    e = e,         f = f/~fth ],/*24*/        [ a = a/~fth,    b = b,         c = c,         d = d,         e = e,         f = f*~fth ],/*25*/        [ a = a*~fth,    b = b*~fth,    c = c*~fth,    d = d,         e = e,         f = f ],/*26*/     [ a = a,         b = b/~fth,    c = c/~fth,    d = d*~fth,    e = e*~fth,    f = f ],/*27*/     [ a = a,         b = b,         c = c,         d = d/~fth,    e = e/~fth,    f = f ],/*28*/     [ a = a/~fth*n4, b = b*~fth*n4, c = c*~fth*n4, d = d*~fth*n4, e = e*~fth*n4, f = f/~fth*n4 ],/*29*/     [ a = a,         b = b,         c = c/~fth,    d = d/~fth,    e = e,         f = f ],/*30*/     [ a = a*~fth*n5, b = b/~fth*n5, c = c*~fth*n5, d = d*~fth*n5, e = e/~fth*n5, f = f*~fth*n5 ],/*31*/     [ a = a/~fth,    b = b*~fth,    c = c,         d = d,         e = e,         f = f/~fth ],/*32*/        [ a = a,         b = b/~fth,    c = c,         d = d,         e = e*~fth,    f = f ],/*33*/     [ a = a*~fth,    b = b*~fth,    c = c,         d = d,         e = e/~fth,    f = f ],/*34*/     [ a = a/~fth,    b = b/~fth,    c = c,         d = d,         e = e*~fth,    f = f*~fth ],/*35*/        [ a = a*~fth,    b = b,         c = c,         d = d/~fth,    e = e/~fth,    f = f/~fth ],/*36*/        [ a = a/~fth,    b = b,         c = c/~fth,    d = d*~fth,    e = e,         f = f*~fth ],/*37*/        [ a = a*~fth,    b = b*~fth,    c = c,         d = d,         e = e,         f = f ],/*38*/     [ a = a,         b = b/~fth,    c = c*~fth,    d = d/~fth,    e = e*~fth,    f = f ],/*39*/     [ a = a/~fth*n6, b = b*~fth*n6, c = c/~fth*n6, d = d*~fth*n6, e = e/~fth*n6, f = f/~fth*n6 ],/*40*/     [ a = a,         b = b/~fth,    c = c*~fth,    d = d/~fth,    e = e*~fth,    f = f ],/*41*/     [ a = a*~fth,    b = b,         c = c/~fth,    d = d,         e = e,         f = f*~fth ],/*42*/        [ a = a,         b = b*~fth,    c = c,         d = d,         e = e/~fth,    f = f ],/*43*/     [ a = a/~fth,    b = b,         c = c*~fth,    d = d*~fth,    e = e*~fth,    f = f ],/*44*/     [ a = a*~fth,    b = b,         c = c,         d = d,         e = e,         f = f/~fth ],/*45*/        [ a = a/~fth,    b = b,         c = c,         d = d/~fth,    e = e/~fth,    f = f ],/*46*/     [ a = a,         b = b/~fth,    c = c/~fth,    d = d*~fth,    e = e*~fth,    f = f ],/*47*/     [ a = a,         b = b*~fth,    c = c*~fth,    d = d/~fth,    e = e,         f = f ],/*48*/     [ a = a,         b = b,         c = c/~fth,    d = d*~fth,    e = e,         f = f ],/*49*/     [ a = a,         b = b,         c = c*~fth,    d = d,         e = e/~fth,    f = f*~fth ],/*50*/        [ a = a*~fth,    b = b/~fth,    c = c,         d = d,         e = e*~fth,    f = f/~fth ],/*51*/        [ a = a/~fth,    b = b,         c = c,         d = d/~fth,    e = e/~fth,    f = f*~fth ],/*52*/        [ a = a*~fth,    b = b,         c = c/~fth,    d = d*~fth,    e = e,         f = f/~fth ],/*53*/        [ a = a,         b = b*~fth,    c = c,         d = d,         e = e,         f = f ],/*54*/     [ a = a/~fth*n7, b = b/~fth*n7, c = c*~fth*n7, d = d/~fth*n7, e = e*~fth*n7, f = f*~fth*n7 ],/*55*/     [ a = a,         b = b,         c = c,         d = d*~fth,    e = e/~fth,    f = f ],/*56*/     [ a = a*~fth,    b = b,         c = c,         d = d,         e = e,         f = f/~fth ],/*57*/        [ a = a,         b = b*~fth,    c = c/~fth,    d = d,         e = e*~fth,    f = f ],/*58*/     [ a = a/~fth,    b = b,         c = c*~fth,    d = d/~fth,    e = e,         f = f*~fth ],/*59*/        [ a = a*~fth,    b = b,         c = c/~fth,    d = d,         e = e,         f = f/~fth ],/*60*/        [ a = a/~fth,    b = b,         c = c,         d = d,         e = e,         f = f*~fth ],/*61*/        [ a = a*~fth,    b = b,         c = c,         d = d,         e = e,         f = f ],/*62*/     [ a = a/~fth*n8, b = b/~fth*n8, c = c*~fth*n8, d = d*~fth*n8, e = e/~fth*n8, f = f/~fth*n8 ],/*63*/     [ a = a,         b = b*~fth,    c = c/~fth,    d = d,         e = e,         f = f*~fth ],/*64*/        [ a = a*~fth*n9, b = b/~fth*n9, c = c*~fth*n9, d = d/~fth*n9, e = e*~fth*n9, f = f/~fth*n9 ]]
270                                                 ++Array.fill((~gsinenum -1), {[/*1*/    [ a = a,         b = b*~fth,    c = c,         d = d*~fth,    e = e,         f = f*~fth ],/*2*/ [ a = a/~fth*n1, b = b/~fth*n1, c = c/~fth*n1, d = d/~fth*n1, e = e/~fth*n1, f = f/~fth*n1 ],/*3*/      [ a = a,         b = b*~fth,    c = c,         d = d,         e = e,         f = f*~fth  ],/*4*/        [ a = a*~fth,    b = b/~fth,    c = c,         d = d,         e = e*~fth,    f = f/~fth  ],/*5*/        [ a = a/~fth,    b = b*~fth,    c = c,         d = d*~fth,    e = e,         f = f*~fth ],/*6*/ [ a = a*~fth,    b = b,         c = c*~fth,    d = d/~fth,    e = e,         f = f/~fth  ],/*7*/        [ a = a/~fth,    b = b/~fth,    c = c/~fth,    d = d,         e = e,         f = f ],/*8*/      [ a = a,         b = b*~fth,    c = c,         d = d,         e = e/~fth,    f = f ],/*9*/      [ a = a*~fth,    b = b,         c = c,         d = d*~fth,    e = e*~fth,    f = f*~fth ],/*10*/        [ a = a,         b = b,         c = c*~fth,    d = d/~fth,    e = e,         f = f ],/*11*/     [ a = a/~fth,    b = b/~fth,    c = c/~fth,    d = d*~fth,    e = e,         f = f ],/*12*/     [ a = a*~fth*n2, b = b*~fth*n2, c = c*~fth*n2, d = d/~fth*n2, e = e/~fth*n2, f = f/~fth*n2 ],/*13*/     [ a = a,         b = b,         c = c,         d = d*~fth,    e = e,         f = f*~fth ],/*14*/        [ a = a,         b = b/~fth,    c = c,         d = d,         e = e*~fth,    f = f],/*15*/      [ a = a/~fth,    b = b,         c = c/~fth,    d = d,         e = e/~fth,    f = f/~fth ],/*16*/        [ a = a,         b = b,         c = c*~fth,    d = d/~fth,    e = e,         f = f ],/*17*/     [ a = a,         b = b*~fth,    c = c,         d = d,         e = e,         f = f*~fth],/*18*/ [ a = a*~fth*n3, b = b/~fth*n3, c = c/~fth*n3, d = d*~fth*n3, e = e*~fth*n3, f = f/~fth*n3 ],/*19*/     [ a = a/~fth,    b = b,         c = c,         d = d/~fth,    e = e,         f = f*~fth ],/*20*/        [ a = a*~fth,    b = b*~fth,    c = c,         d = d,         e = e/~fth,    f = f/~fth ],/*21*/        [ a = a,         b = b/~fth,    c = c*~fth,    d = d,         e = e,         f = f*~fth ],/*22*/        [ a = a,         b = b,         c = c/~fth,    d = d*~fth,    e = e,         f = f ],/*23*/     [ a = a,         b = b,         c = c,         d = d/~fth,    e = e,         f = f/~fth ],/*24*/        [ a = a/~fth,    b = b,         c = c,         d = d,         e = e,         f = f*~fth ],/*25*/        [ a = a*~fth,    b = b*~fth,    c = c*~fth,    d = d,         e = e,         f = f ],/*26*/     [ a = a,         b = b/~fth,    c = c/~fth,    d = d*~fth,    e = e*~fth,    f = f ],/*27*/     [ a = a,         b = b,         c = c,         d = d/~fth,    e = e/~fth,    f = f ],/*28*/     [ a = a/~fth*n4, b = b*~fth*n4, c = c*~fth*n4, d = d*~fth*n4, e = e*~fth*n4, f = f/~fth*n4 ],/*29*/     [ a = a,         b = b,         c = c/~fth,    d = d/~fth,    e = e,         f = f ],/*30*/     [ a = a*~fth*n5, b = b/~fth*n5, c = c*~fth*n5, d = d*~fth*n5, e = e/~fth*n5, f = f*~fth*n5 ],/*31*/     [ a = a/~fth,    b = b*~fth,    c = c,         d = d,         e = e,         f = f/~fth ],/*32*/        [ a = a,         b = b/~fth,    c = c,         d = d,         e = e*~fth,    f = f ],/*33*/     [ a = a*~fth,    b = b*~fth,    c = c,         d = d,         e = e/~fth,    f = f ],/*34*/     [ a = a/~fth,    b = b/~fth,    c = c,         d = d,         e = e*~fth,    f = f*~fth ],/*35*/        [ a = a*~fth,    b = b,         c = c,         d = d/~fth,    e = e/~fth,    f = f/~fth ],/*36*/        [ a = a/~fth,    b = b,         c = c/~fth,    d = d*~fth,    e = e,         f = f*~fth ],/*37*/        [ a = a*~fth,    b = b*~fth,    c = c,         d = d,         e = e,         f = f ],/*38*/     [ a = a,         b = b/~fth,    c = c*~fth,    d = d/~fth,    e = e*~fth,    f = f ],/*39*/     [ a = a/~fth*n6, b = b*~fth*n6, c = c/~fth*n6, d = d*~fth*n6, e = e/~fth*n6, f = f/~fth*n6 ],/*40*/     [ a = a,         b = b/~fth,    c = c*~fth,    d = d/~fth,    e = e*~fth,    f = f ],/*41*/     [ a = a*~fth,    b = b,         c = c/~fth,    d = d,         e = e,         f = f*~fth ],/*42*/        [ a = a,         b = b*~fth,    c = c,         d = d,         e = e/~fth,    f = f ],/*43*/     [ a = a/~fth,    b = b,         c = c*~fth,    d = d*~fth,    e = e*~fth,    f = f ],/*44*/     [ a = a*~fth,    b = b,         c = c,         d = d,         e = e,         f = f/~fth ],/*45*/        [ a = a/~fth,    b = b,         c = c,         d = d/~fth,    e = e/~fth,    f = f ],/*46*/     [ a = a,         b = b/~fth,    c = c/~fth,    d = d*~fth,    e = e*~fth,    f = f ],/*47*/     [ a = a,         b = b*~fth,    c = c*~fth,    d = d/~fth,    e = e,         f = f ],/*48*/     [ a = a,         b = b,         c = c/~fth,    d = d*~fth,    e = e,         f = f ],/*49*/     [ a = a,         b = b,         c = c*~fth,    d = d,         e = e/~fth,    f = f*~fth ],/*50*/        [ a = a*~fth,    b = b/~fth,    c = c,         d = d,         e = e*~fth,    f = f/~fth ],/*51*/        [ a = a/~fth,    b = b,         c = c,         d = d/~fth,    e = e/~fth,    f = f*~fth ],/*52*/        [ a = a*~fth,    b = b,         c = c/~fth,    d = d*~fth,    e = e,         f = f/~fth ],/*53*/        [ a = a,         b = b*~fth,    c = c,         d = d,         e = e,         f = f ],/*54*/     [ a = a/~fth*n7, b = b/~fth*n7, c = c*~fth*n7, d = d/~fth*n7, e = e*~fth*n7, f = f*~fth*n7 ],/*55*/     [ a = a,         b = b,         c = c,         d = d*~fth,    e = e/~fth,    f = f ],/*56*/     [ a = a*~fth,    b = b,         c = c,         d = d,         e = e,         f = f/~fth ],/*57*/        [ a = a,         b = b*~fth,    c = c/~fth,    d = d,         e = e*~fth,    f = f ],/*58*/     [ a = a/~fth,    b = b,         c = c*~fth,    d = d/~fth,    e = e,         f = f*~fth ],/*59*/        [ a = a*~fth,    b = b,         c = c/~fth,    d = d,         e = e,         f = f/~fth ],/*60*/        [ a = a/~fth,    b = b,         c = c,         d = d,         e = e,         f = f*~fth ],/*61*/        [ a = a*~fth,    b = b,         c = c,         d = d,         e = e,         f = f ],/*62*/     [ a = a/~fth*n8, b = b/~fth*n8, c = c*~fth*n8, d = d*~fth*n8, e = e/~fth*n8, f = f/~fth*n8 ],/*63*/     [ a = a,         b = b*~fth,    c = c/~fth,    d = d,         e = e,         f = f*~fth ],/*64*/        [ a = a*~fth*n9, b = b/~fth*n9, c = c*~fth*n9, d = d/~fth*n9, e = e*~fth*n9, f = f/~fth*n9 ]]
271                                         }).flatten].flatten.reverse, inf);
272                                         /*env1 = EnvGen.kr(Env([0, 1, 1, 0], [0, dur, 0]), levelScale: amp, doneAction: 2);*/
273                                         s1 = GrainSin.ar(1, Impulse.ar(dur+tune), 1/(dur+tune),Demand.ar(Impulse.ar(dur+tune), 0, dseq6f)*fc);
274                                         s2 = GrainSin.ar(1, Impulse.ar(dur+tune), 1/(dur+tune),Demand.ar(Impulse.ar(dur+tune), 0, dseq6r)*fc);
275                                         s3 = GrainSin.ar(1, Impulse.ar(dur+tune/3), 1/(dur+tune/3),Demand.ar(Impulse.ar(dur+tune/3), 0, dseq2f)*fc);
276                                         s4 = GrainSin.ar(1, Impulse.ar(dur+tune/3), 1/(dur+tune/3),Demand.ar(Impulse.ar(dur+tune/3), 0, dseq2r)*fc);
277                                         s5 = GrainSin.ar(1, Impulse.ar(dur+tune/6), 1/(dur+tune/6),Demand.ar(Impulse.ar(dur+tune/6), 0, dseq1f)*fc);
278                                         s6 = GrainSin.ar(1, Impulse.ar(dur+tune/6), 1/(dur+tune/6),Demand.ar(Impulse.ar(dur+tune/6), 0, dseq1r)*fc);
279                                         s1 = [s1,s2,s3,s4,s5,s6];
280                                         OffsetOut.ar(0, s1.dup*vol);
281                                 }, [\ir]).add;
282                         };
283
284
285                         if((~gsinenum == nil) and: (~synthdef != "gsineicls"), {
286                                 (
287                                         if(~basefreq == nil, {~basefreq = ~base_frequency});
288                                         ~fmult = 16;
289                                         (#a,b,c,d,e,f = /*[ 432/1.6180339887499, 432*1.6180339887499, 432, 432*1.6180339887499*1.6180339887499 , 528, 432/1.6180339887499/1.6180339887499  ]*/
290                                                 [ ~basefreq,~basefreq,~basefreq,~basefreq,~basefreq,~basefreq  ];
291                                                 ~a = a; ~b = b; ~c =c; ~d = d; ~e = e;~f=f;);
292
293                                         ~fth = 1.4142135623729;
294                                         ~gm = 1.6180339887499;
295                                         ~stepratio = 1.0594630943593;
296                                         ~nval = 1.0355417528;
297                                         ~n9s = 1.86;
298                                         ~n9 = 1.080059789899;
299                                         ~n18 = 1.0392592260319;
300                                         ~n27 = 1.0260044847071;
301                                         ~n36 = 1.0194406437022;
302                                         ~n45 = 1.0155225125043;
303                                         ~n54 = 1.012918794725;
304                                         ~n63 = 1.0110630844869;
305                                         ~n72 = 1.0096735332285;
306                                         ~ngm1 = 1.0549232131786;
307                                         ~ngm2 = 1.0270945492887;
308                                         ~ngm6 = 1.0089511542031;
309                                         ~nval = ~ngm6;
310
311                                         ~synthdef = "gsineicls"; ~gsinenum = 6; ~gsine.value;
312                                 );
313                         });
314
315
316
317                         //gui
318                         w = Window("ic gui", Rect(0,0,Window.screenBounds.width,Window.screenBounds.height), border:true);
319
320
321
322                         view = UserView(w, Window.screenBounds);
323                         view.clearOnRefresh = false;
324                         view.background = Color.black;
325
326                         /*~b1 = Window.screenBounds.width/(12*4) /*25.462962962963*/; ~btu = 31; ~btd = 340; ~bw = 0.5; ~bh = 70; ~bcolor = Color.grey;
327                         CompositeView(w, Rect(~b1, ~btu, ~bw, ~bh)).background = ~bcolor;
328                         CompositeView(w, Rect(~b1, ~btd, ~bw, ~bh)).background = ~bcolor;
329                         54.do({CompositeView(w, Rect(~b1 = ~b1+(Window.screenBounds.width/(12*4)), ~btu, ~bw, ~bh)).background = ~bcolor;});
330                         ~b1 = Window.screenBounds.width/(12*4);
331                         54.do({CompositeView(w, Rect(~b1 = ~b1+(Window.screenBounds.width/(12*4)), ~btd, ~bw, ~bh)).background = ~bcolor;});*/
332
333                         ~nh = 2;
334                         ~nw = ~nh*1.6180339887499;
335
336                         ~tgrid = 30;
337                         ~bgrid = Window.screenBounds.height-(Window.screenBounds.height/1.6180339887499)+30;
338
339                         ~dc1 = ~tgrid-5; ~dc2 = ~bgrid-5; ~dca = 10;
340
341                         8.do(x=~tgrid-10; {CompositeView(w, Rect(1, x=x+10, Window.screenBounds.width, 0.5)).background = Color.new255(51, 51, 51)});
342                         8.do(x=~bgrid-10; {CompositeView(w, Rect(1, x=x+10, Window.screenBounds.width, 0.5)).background = Color.new255(51, 51, 51)});
343
344                         ~z1 = (CompositeView(w, Rect((if(~f1 == nil, {f1.value},{~f1.value}).explin(~outmin1,~outmax1,0,Window.screenBounds.width)), ~dc1=~dc1+10, ~nw, 2)).background = Color.white;);
345                         ~z2 = (CompositeView(w, Rect((if(~f2 == nil, {f2.value},{~f2.value}).explin(~outmin1,~outmax1,0,Window.screenBounds.width)), ~dc1=~dc1+10, ~nw, 2)).background = Color.white;);
346                         ~z3 = (CompositeView(w, Rect((if(~f3 == nil, {f3.value},{~f3.value}).explin(~outmin1,~outmax1,0,Window.screenBounds.width)), ~dc1=~dc1+10, ~nw, 2)).background = Color.white;);
347                         ~z4 = (CompositeView(w, Rect((if(~f4 == nil, {f4.value},{~f4.value}).explin(~outmin1,~outmax1,0,Window.screenBounds.width)), ~dc1=~dc1+10, ~nw, 2)).background = Color.white;);
348                         ~z5 = (CompositeView(w, Rect((if(~f5 == nil, {f5.value},{~f5.value}).explin(~outmin1,~outmax1,0,Window.screenBounds.width)), ~dc1=~dc1+10, ~nw, 2)).background = Color.white;);
349                         ~z6 = (CompositeView(w, Rect((if(~f6 == nil, {f6.value},{~f6.value}).explin(~outmin1,~outmax1,0,Window.screenBounds.width)), ~dc1=~dc1+10, ~nw, 2)).background = Color.white;);
350                         ~z7 = (CompositeView(w, Rect((if(~f7 == nil, {f7.value},{~f7.value}).explin(~outmin1,~outmax1,0,Window.screenBounds.width)), ~dc1=~dc1+10, ~nw, 2)).background = Color.white;);
351                         /*~z8 = (CompositeView(w, Rect((if(~f8 == nil, {f8.value},{~f8.value}).explin(~outmin1,~outmax1,0,Window.screenBounds.width)), ~dc1=~dc1+10, ~nw, 2)).background = Color.white;);
352                         ~z9 = (CompositeView(w, Rect((if(~f9 == nil, {f9.value},{~f9.value}).explin(~outmin1,~outmax1,0,Window.screenBounds.width)), ~dc1=~dc1+10, ~nw, 2)).background = Color.white;);
353                         ~z10 = (CompositeView(w, Rect((if(~f10 == nil, {f10.value},{~f10.value}).explin(~outmin1,~outmax1,0,Window.screenBounds.width)), ~dc1=~dc1+10, ~nw, 2)).background = Color.white;);
354                         ~z11 = (CompositeView(w, Rect((if(~f11 == nil, {f11.value},{~f11.value}).explin(~outmin1,~outmax1,0,Window.screenBounds.width)), ~dc1=~dc1+10, ~nw, 2)).background = Color.white;);
355                         ~z12 = (CompositeView(w, Rect((if(~f12 == nil, {f12.value},{~f12.value}).explin(~outmin1,~outmax1,0,Window.screenBounds.width)), ~dc1=~dc1+10, ~nw, 2)).background = Color.white;);
356                         ~z13 = (CompositeView(w, Rect((if(~f37 == nil, {f13.value},{~f37.value}).explin(~outmin1,~outmax1,0,Window.screenBounds.width)), ~dc1=~dc1+10, ~nw, 2)).background = Color.white;);
357                         */      /*~z14 = (CompositeView(w, Rect((if(~f1 == nil, {f1.value},{~f1.value}).explin(~outmin1,~outmax1,0,Window.screenBounds.width)), ~dc1=~dc1+10, ~nw, 2)).background = Color.white;);
358                         ~z15 = (CompositeView(w, Rect((if(~f1 == nil, {f1.value},{~f1.value}).explin(~outmin1,~outmax1,0,Window.screenBounds.width)), ~dc1=~dc1+10, ~nw, 2)).background = Color.white;);
359                         ~z16 = (CompositeView(w, Rect((if(~f1 == nil, {f1.value},{~f1.value}).explin(~outmin1,~outmax1,0,Window.screenBounds.width)), ~dc1=~dc1+10, ~nw, 2)).background = Color.white;);
360                         ~z17 = (CompositeView(w, Rect((if(~f1 == nil, {f1.value},{~f1.value}).explin(~outmin1,~outmax1,0,Window.screenBounds.width)), ~dc1=~dc1+10, ~nw, 2)).background = Color.white;);
361                         ~z18 = (CompositeView(w, Rect((if(~f1 == nil, {f1.value},{~f1.value}).explin(~outmin1,~outmax1,0,Window.screenBounds.width)), ~dc1=~dc1+10, ~nw, 2)).background = Color.white;);
362                         ~z19 = (CompositeView(w, Rect((if(~f1 == nil, {f1.value},{~f1.value}).explin(~outmin1,~outmax1,0,Window.screenBounds.width)), ~dc1=~dc1+10, ~nw, 2)).background = Color.white;);
363                         ~z20 = (CompositeView(w, Rect((if(~f1 == nil, {f1.value},{~f1.value}).explin(~outmin1,~outmax1,0,Window.screenBounds.width)), ~dc1=~dc1+10, ~nw, 2)).background = Color.white;);
364                         ~z21 = (CompositeView(w, Rect((if(~f1 == nil, {f1.value},{~f1.value}).explin(~outmin1,~outmax1,0,Window.screenBounds.width)), ~dc1=~dc1+10, ~nw, 2)).background = Color.white;);
365                         ~z22 = (CompositeView(w, Rect((if(~f1 == nil, {f1.value},{~f1.value}).explin(~outmin1,~outmax1,0,Window.screenBounds.width)), ~dc1=~dc1+10, ~nw, 2)).background = Color.white;);
366                         ~z23 = (CompositeView(w, Rect((if(~f1 == nil, {f1.value},{~f1.value}).explin(~outmin1,~outmax1,0,Window.screenBounds.width)), ~dc1=~dc1+10, ~nw, 2)).background = Color.white;);
367                         ~z24 = (CompositeView(w, Rect((if(~f1 == nil, {f1.value},{~f1.value}).explin(~outmin1,~outmax1,0,Window.screenBounds.width)), ~dc1=~dc1+10, ~nw, 2)).background = Color.white;);
368                         */              ~zmid = (CompositeView(w, Rect(x, 280, ~nw, 2)).background = Color.clear;);
369                         ~z25 = (CompositeView(w, Rect((if(~f1 == nil, {f1.value},{~f1.value}).explin(~outmin2,~outmax2,0,Window.screenBounds.width)), ~dc2=~dc2+10, ~nw, 2)).background = Color.white;);
370                         ~z26 = (CompositeView(w, Rect((if(~f2 == nil, {f2.value},{~f2.value}).explin(~outmin2,~outmax2,0,Window.screenBounds.width)), ~dc2=~dc2+10, ~nw, 2)).background = Color.white;);
371                         ~z27 = (CompositeView(w, Rect((if(~f3 == nil, {f3.value},{~f3.value}).explin(~outmin2,~outmax2,0,Window.screenBounds.width)), ~dc2=~dc2+10, ~nw, 2)).background = Color.white;);
372                         ~z28 = (CompositeView(w, Rect((if(~f4 == nil, {f4.value},{~f4.value}).explin(~outmin2,~outmax2,0,Window.screenBounds.width)), ~dc2=~dc2+10, ~nw, 2)).background = Color.white;);
373                         ~z29 = (CompositeView(w, Rect((if(~f5 == nil, {f5.value},{~f5.value}).explin(~outmin2,~outmax2,0,Window.screenBounds.width)), ~dc2=~dc2+10, ~nw, 2)).background = Color.white;);
374                         ~z30 = (CompositeView(w, Rect((if(~f6 == nil, {f6.value},{~f6.value}).explin(~outmin2,~outmax2,0,Window.screenBounds.width)), ~dc2=~dc2+10, ~nw, 2)).background = Color.white;);
375                         ~z31 = (CompositeView(w, Rect((if(~f7 == nil, {f7.value},{~f7.value}).explin(~outmin2,~outmax2,0,Window.screenBounds.width)), ~dc2=~dc2+10, ~nw, 2)).background = Color.white;);
376                         /*~z32 = (CompositeView(w, Rect((if(~f8 == nil, {f8.value},{~f8.value}).explin(~outmin2,~outmax2,0,Window.screenBounds.width)), ~dc2=~dc2+10, ~nw, 2)).background = Color.white;);
377                         ~z33 = (CompositeView(w, Rect((if(~f9 == nil, {f9.value},{~f9.value}).explin(~outmin2,~outmax2,0,Window.screenBounds.width)), ~dc2=~dc2+10, ~nw, 2)).background = Color.white;);
378                         ~z34 = (CompositeView(w, Rect((if(~f10 == nil, {f10.value},{~f10.value}).explin(~outmin2,~outmax2,0,Window.screenBounds.width)), ~dc2=~dc2+10, ~nw, 2)).background = Color.white;);
379                         ~z35 = (CompositeView(w, Rect((if(~f11 == nil, {f11.value},{~f11.value}).explin(~outmin2,~outmax2,0,Window.screenBounds.width)), ~dc2=~dc2+10, ~nw, 2)).background = Color.white;);
380                         ~z36 = (CompositeView(w, Rect((if(~f12 == nil, {f12.value},{~f12.value}).explin(~outmin2,~outmax2,0,Window.screenBounds.width)), ~dc2=~dc2+10, ~nw, 2)).background = Color.white;);
381                         ~z37 = (CompositeView(w, Rect((if(~f37 == nil, {f13.value},{~f37.value}).explin(~outmin2,~outmax2,0,Window.screenBounds.width)), ~dc2=~dc2+10, ~nw, 2)).background = Color.white;);
382                         */      /*~z38 = (CompositeView(w, Rect((if(~f1 == nil, {f1.value},{~f1.value}).explin(~outmin2,~outmax2,0,Window.screenBounds.width)), ~dc2=~dc2+10, ~nw, 2)).background = Color.white;);
383                         ~z39 = (CompositeView(w, Rect((if(~f1 == nil, {f1.value},{~f1.value}).explin(~outmin2,~outmax2,0,Window.screenBounds.width)), ~dc2=~dc2+10, ~nw, 2)).background = Color.white;);
384                         ~z40 = (CompositeView(w, Rect((if(~f1 == nil, {f1.value},{~f1.value}).explin(~outmin2,~outmax2,0,Window.screenBounds.width)), ~dc2=~dc2+10, ~nw, 2)).background = Color.white;);
385                         ~z41 = (CompositeView(w, Rect((if(~f1 == nil, {f1.value},{~f1.value}).explin(~outmin2,~outmax2,0,Window.screenBounds.width)), ~dc2=~dc2+10, ~nw, 2)).background = Color.white;);
386                         ~z42 = (CompositeView(w, Rect((if(~f1 == nil, {f1.value},{~f1.value}).explin(~outmin2,~outmax2,0,Window.screenBounds.width)), ~dc2=~dc2+10, ~nw, 2)).background = Color.white;);
387                         ~z43 = (CompositeView(w, Rect((if(~f1 == nil, {f1.value},{~f1.value}).explin(~outmin2,~outmax2,0,Window.screenBounds.width)), ~dc2=~dc2+10, ~nw, 2)).background = Color.white;);
388                         ~z44 = (CompositeView(w, Rect((if(~f1 == nil, {f1.value},{~f1.value}).explin(~outmin2,~outmax2,0,Window.screenBounds.width)), ~dc2=~dc2+10, ~nw, 2)).background = Color.white;);
389                         ~z45 = (CompositeView(w, Rect((if(~f1 == nil, {f1.value},{~f1.value}).explin(~outmin2,~outmax2,0,Window.screenBounds.width)), ~dc2=~dc2+10, ~nw, 2)).background = Color.white;);
390                         ~z46 = (CompositeView(w, Rect((if(~f1 == nil, {f1.value},{~f1.value}).explin(~outmin2,~outmax2,0,Window.screenBounds.width)), ~dc2=~dc2+10, ~nw, 2)).background = Color.white;);
391                         ~z47 = (CompositeView(w, Rect((if(~f1 == nil, {f1.value},{~f1.value}).explin(~outmin2,~outmax2,0,Window.screenBounds.width)), ~dc2=~dc2+10, ~nw, 2)).background = Color.white;);
392                         ~z48 = (CompositeView(w, Rect((if(~f1 == nil, {f1.value},{~f1.value}).explin(~outmin2,~outmax2,0,Window.screenBounds.width)), ~dc2=~dc2+10, ~nw, 2)).background = Color.white;);
393                         */
394
395                         ~dc1 = ~tgrid-5; ~dc2 = ~bgrid-5; ~dca = 10;
396
397                         ~synthopen = {
398                                 case
399                                 {((~la.isRunning == false) and: (~la1.isRunning == false)) or: ~la1.isRunning == true}{
400                                         (1.do({var a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,fs,rs,vol1,vol2,vol3,vol4,vol5,vol6,vol7,vol8,vol9,vol10,vol11,vol12,s1,s2,s3,s4,s5,s6,f1,f2,f3,f4,f5,f6,f7,f8,f9,f10,f11,f12,f13,f14,f15,f16,f17,f18,f19,f20,f21,f22,f23,f24,fs1,fs2,fs3,fs4,fs5,fs6,fd1,fd2,fd3,fd4,fd5,fd6,tune=0;
401                                                 #vol1,vol2,vol3,vol4,vol5,vol6,vol7,vol8,vol9,vol10,vol11,vol12 = [~vol1,~vol2,~vol3,~vol4,~vol5,~vol6,~vol7,~vol8,~vol9,~vol10,~vol11,~vol12];
402                                                 #f1,f2,f3,f4,f5,f6,f7,f8,f9,f10,f11,f12 = [ 0,0,0,0,0,0,0,0,0,0,0,0 ];
403                                                 ~la1.set(\dur, f1, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f,    \vol, vol1, \tune, tune);  ~lb1.set(\dur, f2, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f, \vol, vol2, \tune, tune);
404                                                 ~lc1.set(\dur, f3, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f,      \vol, vol3, \tune, tune);  ~ld1.set(\dur, f4, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f, \vol, vol4, \tune, tune);
405                                                 ~le1.set(\dur, f5, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f,      \vol, vol4, \tune, tune);  ~lf1.set(\dur, f6, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f, \vol, vol6, \tune, tune);
406                                                 ~lg1.set(\dur, f7, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f,    \vol, vol7, \tune, tune);               }););
407
408                                         (~icl6=ParGroup.new;~icl61=ParGroup.new;~icl62=ParGroup.new;~icl63=ParGroup.new;
409                                                 1.do({var a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,fs,rs,vol1,vol2,vol3,vol4,vol5,vol6,vol7,vol8,vol9,vol10,vol11,vol12,s1,s2,s3,s4,s5,s6,f1,f2,f3,f4,f5,f6,f7,f8,f9,f10,f11,f12,f13,f14,f15,f16,f17,f18,f19,f20,f21,f22,f23,f24,fs1,fs2,fs3,fs4,fs5,fs6,fd1,fd2,fd3,fd4,fd5,fd6,tune=0;
410                                                         #vol1,vol2,vol3,vol4,vol5,vol6,vol7,vol8,vol9,vol10,vol11,vol12 = [~vol1,~vol2,~vol3,~vol4,~vol5,~vol6,~vol7,~vol8,~vol9,~vol10,~vol11,~vol12];
411                                                         s1 = \gsineicls;
412                                                         ~la = Synth(s1, [\dur, ~f1, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f,   \vol, vol1, \tune, tune],~icl6).register;    ~lb = Synth(s1, [\dur, ~f2, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f,   \vol, vol2, \tune, tune],~icl6);
413                                                         ~lc = Synth(s1, [\dur, ~f3, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f, \vol, vol3, \tune, tune], ~icl61);   ~ld = Synth(s1, [\dur, ~f4, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f, \vol, vol4, \tune, tune],~icl61);
414                                                         ~le = Synth(s1, [\dur, ~f5, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f, \vol, vol5, \tune, tune], ~icl62);   ~lf = Synth(s1, [\dur, ~f6, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f, \vol, vol6, \tune, tune],~icl62);
415                                                         ~lg = Synth(s1, [\dur, ~f7, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f,   \vol, vol7, \tune, tune],~icl63);
416                                                 });
417                                         );
418                                         AppClock.sched(0.161803398875,{
419                                                 ([~la1,~lb1,~lc1,~ld1,~le1,~lf1,~lg1].do(_.free)); ~slideroutine.stop;
420                                         });
421                                 }
422                                 {~la.isRunning == true}{
423                                         (1.do({var a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,fs,rs,vol1,vol2,vol3,vol4,vol5,vol6,vol7,vol8,vol9,vol10,vol11,vol12,s1,s2,s3,s4,s5,s6,f1,f2,f3,f4,f5,f6,f7,f8,f9,f10,f11,f12,f13,f14,f15,f16,f17,f18,f19,f20,f21,f22,f23,f24,fs1,fs2,fs3,fs4,fs5,fs6,fd1,fd2,fd3,fd4,fd5,fd6,tune=0;
424                                                 #vol1,vol2,vol3,vol4,vol5,vol6,vol7,vol8,vol9,vol10,vol11,vol12 = [~vol1,~vol2,~vol3,~vol4,~vol5,~vol6,~vol7,~vol8,~vol9,~vol10,~vol11,~vol12];
425                                                 #f1,f2,f3,f4,f5,f6,f7,f8,f9,f10,f11,f12 = [ 0,0,0,0,0,0,0,0,0,0,0,0 ];
426                                                 ~la.set(\dur, f1, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f,    \vol, vol1, \tune, tune);  ~lb.set(\dur, f2, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f, \vol, vol2, \tune, tune);
427                                                 ~lc.set(\dur, f3, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f,      \vol, vol3, \tune, tune);  ~ld.set(\dur, f4, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f, \vol, vol4, \tune, tune);
428                                                 ~le.set(\dur, f5, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f,      \vol, vol4, \tune, tune);  ~lf.set(\dur, f6, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f, \vol, vol6, \tune, tune);
429                                                 ~lg.set(\dur, f7, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f,    \vol, vol7, \tune, tune);                }););
430
431                                         (~icl6=ParGroup.new;~icl61=ParGroup.new;~icl62=ParGroup.new;~icl63=ParGroup.new;
432                                                 1.do({var a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,fs,rs,vol1,vol2,vol3,vol4,vol5,vol6,vol7,vol8,vol9,vol10,vol11,vol12,s1,s2,s3,s4,s5,s6,f1,f2,f3,f4,f5,f6,f7,f8,f9,f10,f11,f12,f13,f14,f15,f16,f17,f18,f19,f20,f21,f22,f23,f24,fs1,fs2,fs3,fs4,fs5,fs6,fd1,fd2,fd3,fd4,fd5,fd6,tune=0;
433                                                         #vol1,vol2,vol3,vol4,vol5,vol6,vol7,vol8,vol9,vol10,vol11,vol12 = [~vol1,~vol2,~vol3,~vol4,~vol5,~vol6,~vol7,~vol8,~vol9,~vol10,~vol11,~vol12];
434                                                         s1 = \gsineicls;
435                                                         ~la1 = Synth(s1, [\dur, ~f1, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f,   \vol, vol1, \tune, tune],~icl6).register;    ~lb1 = Synth(s1, [\dur, ~f2, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f,   \vol, vol2, \tune, tune],~icl6);
436                                                         ~lc1 = Synth(s1, [\dur, ~f3, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f, \vol, vol3, \tune, tune], ~icl61);   ~ld1 = Synth(s1, [\dur, ~f4, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f, \vol, vol4, \tune, tune],~icl61);
437                                                         ~le1 = Synth(s1, [\dur, ~f5, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f, \vol, vol5, \tune, tune], ~icl62);   ~lf1 = Synth(s1, [\dur, ~f6, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f, \vol, vol6, \tune, tune],~icl62);
438                                                         ~lg1 = Synth(s1, [\dur, ~f7, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f,   \vol, vol7, \tune, tune],~icl63);
439                                                 });
440                                         );
441                                         AppClock.sched(0.161803398875,{
442                                                 ([~la,~lb,~lc,~ld,~le,~lf,~lg].do(_.free)); ~slideroutine.stop;
443                                         });
444                                 };
445
446                                 if((~f1 > ~outmaxa) or: (~f1 < ~outmina), {~z25.close;~z1.close;~z25 = (CompositeView(w, Rect((~f1.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+10, ~nw, 2)).background = Color.white;);}, {~z1.close;~z25.close;~z1 = (CompositeView(w, Rect((~f1.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+10, ~nw, 2)).background = Color.white;);});
447                                 if((~f2 > ~outmaxa) or: (~f2 < ~outmina), {~z26.close;~z2.close;~z26 = (CompositeView(w, Rect((~f2.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+20, ~nw, 2)).background = Color.white;);}, {~z2.close;~z26.close;~z2 = (CompositeView(w, Rect((~f2.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+20, ~nw, 2)).background = Color.white;);});
448                                 if((~f3 > ~outmaxa) or: (~f3 < ~outmina), {~z27.close;~z3.close;~z27 = (CompositeView(w, Rect((~f3.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+30, ~nw, 2)).background = Color.white;);}, {~z3.close;~z27.close;~z3 = (CompositeView(w, Rect((~f3.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+30, ~nw, 2)).background = Color.white;);});
449                                 if((~f4 > ~outmaxa) or: (~f4 < ~outmina), {~z28.close;~z4.close;~z28 = (CompositeView(w, Rect((~f4.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+40, ~nw, 2)).background = Color.white;);}, {~z4.close;~z28.close;~z4 = (CompositeView(w, Rect((~f4.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+40, ~nw, 2)).background = Color.white;);});
450                                 if((~f5 > ~outmaxa) or: (~f5 < ~outmina), {~z29.close;~z5.close;~z29 = (CompositeView(w, Rect((~f5.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+50, ~nw, 2)).background = Color.white;);}, {~z5.close;~z29.close;~z5 = (CompositeView(w, Rect((~f5.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+50, ~nw, 2)).background = Color.white;);});
451                                 if((~f6 > ~outmaxa) or: (~f6 < ~outmina), {~z30.close;~z6.close;~z30 = (CompositeView(w, Rect((~f6.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+60, ~nw, 2)).background = Color.white;);}, {~z6.close;~z30.close;~z6 = (CompositeView(w, Rect((~f6.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+60, ~nw, 2)).background = Color.white;);});
452                                 if((~f7 > ~outmaxa) or: (~f7 < ~outmina), {~z31.close;~z7.close;~z31 = (CompositeView(w, Rect((~f7.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+70, ~nw, 2)).background = Color.white;);}, {~z7.close;~z31.close;~z7 = (CompositeView(w, Rect((~f7.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+70, ~nw, 2)).background = Color.white;);});
453                                 /*if((f8 > ~outmaxa) or: (f8 < ~outmina), {~z32.close;~z8.close;~z32 = (CompositeView(w, Rect((f8.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+80, ~nw, 2)).background = Color.white;);}, {~z8.close;~z32.close;~z8 = (CompositeView(w, Rect((f8.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+80 ~nw, 2)).background = Color.white;);});
454                                 if((f9 > ~outmaxa) or: (f9 < ~outmina), {~z33.close;~z9.close;~z33 = (CompositeView(w, Rect((f9.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+90, ~nw, 2)).background = Color.white;);}, {~z9.close;~z33.close;~z9 = (CompositeView(w, Rect((f9.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+90, ~nw, 2)).background = Color.white;);});
455                                 if((f10 > ~outmaxa) or: (f10 < ~outmina), {~z34.close;~z10.close;~z34 = (CompositeView(w, Rect((f10.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+100, ~nw, 2)).background = Color.white;);}, {~z10.close;~z34.close;~z10 = (CompositeView(w, Rect((f10.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+100, ~nw, 2)).background = Color.white;);});
456                                 if((f11 > ~outmaxa) or: (f11 < ~outmina), {~z35.close;~z11.close;~z35 = (CompositeView(w, Rect((f11.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+110, ~nw, 2)).background = Color.white;);}, {~z11.close;~z35.close;~z11 = (CompositeView(w, Rect((f11.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+110, ~nw, 2)).background = Color.white;);});
457                                 if((f12 > ~outmaxa) or: (f12 < ~outmina), {~z36.close;~z12.close;~z36 = (CompositeView(w, Rect((f12.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+120, ~nw, 2)).background = Color.white;);}, {~z12.close;~z36.close;~z12 = (CompositeView(w, Rect((f12.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+120, ~nw, 2)).background = Color.white;);});
458                                 *//*if((f13 > ~outmaxa) or: (f13 < ~outmina), {~z37.close;~z13.close;~z37 = (CompositeView(w, Rect((f13.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+130, ~nw, 2)).background = Color.white;);}, {~z13.close;~z37.close;~z13 = (CompositeView(w, Rect((f13.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+130, ~nw, 2)).background = Color.white;);});
459                                 if((f14 > ~outmaxa) or: (f14 < ~outmina), {~z38.close;~z14.close;~z38 = (CompositeView(w, Rect((f14.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+140, ~nw, 2)).background = Color.white;);}, {~z14.close;~z38.close;~z14 = (CompositeView(w, Rect((f14.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+140, ~nw, 2)).background = Color.white;);});
460                                 if((f15 > ~outmaxa) or: (f15 < ~outmina), {~z39.close;~z15.close;~z39 = (CompositeView(w, Rect((f15.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+150, ~nw, 2)).background = Color.white;);}, {~z15.close;~z39.close;~z15 = (CompositeView(w, Rect((f15.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+150, ~nw, 2)).background = Color.white;);});
461                                 if((f16 > ~outmaxa) or: (f16 < ~outmina), {~z40.close;~z16.close;~z40 = (CompositeView(w, Rect((f16.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+160, ~nw, 2)).background = Color.white;);}, {~z16.close;~z40.close;~z16 = (CompositeView(w, Rect((f16.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+160, ~nw, 2)).background = Color.white;);});
462                                 if((f17 > ~outmaxa) or: (f17 < ~outmina), {~z41.close;~z17.close;~z41 = (CompositeView(w, Rect((f17.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+170, ~nw, 2)).background = Color.white;);}, {~z17.close;~z41.close;~z17 = (CompositeView(w, Rect((f17.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+170, ~nw, 2)).background = Color.white;);});
463                                 if((f18 > ~outmaxa) or: (f18 < ~outmina), {~z42.close;~z18.close;~z42 = (CompositeView(w, Rect((f18.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+180, ~nw, 2)).background = Color.white;);}, {~z18.close;~z42.close;~z18 = (CompositeView(w, Rect((f18.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+180, ~nw, 2)).background = Color.white;);});
464                                 if((f19 > ~outmaxa) or: (f19 < ~outmina), {~z43.close;~z19.close;~z43 = (CompositeView(w, Rect((f19.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+190, ~nw, 2)).background = Color.white;);}, {~z19.close;~z43.close;~z19 = (CompositeView(w, Rect((f19.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+190, ~nw, 2)).background = Color.white;);});
465                                 */      /*if((f20 > ~outmaxa) or: (f20 < ~outmina), {~z44.close;~z20.close;~z44 = (CompositeView(w, Rect((f20.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+200, ~nw, 2)).background = Color.white;);}, {~z20.close;~z44.close;~z20 = (CompositeView(w, Rect((f20.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+200, ~nw, 2)).background = Color.white;);});
466                                 if((f21 > ~outmaxa) or: (f21 < ~outmina), {~z45.close;~z21.close;~z45 = (CompositeView(w, Rect((f21.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+210, ~nw, 2)).background = Color.white;);}, {~z21.close;~z45.close;~z21 = (CompositeView(w, Rect((f21.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+210, ~nw, 2)).background = Color.white;);});
467                                 if((f22 > ~outmaxa) or: (f22 < ~outmina), {~z46.close;~z22.close;~z46 = (CompositeView(w, Rect((f22.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+220, ~nw, 2)).background = Color.white;);}, {~z22.close;~z46.close;~z22 = (CompositeView(w, Rect((f22.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+220, ~nw, 2)).background = Color.white;);});
468                                 if((f23 > ~outmaxa) or: (f23 < ~outmina), {~z47.close;~z23.close;~z47 = (CompositeView(w, Rect((f23.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+230, ~nw, 2)).background = Color.white;);}, {~z23.close;~z47.close;~z23 = (CompositeView(w, Rect((f23.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+230, ~nw, 2)).background = Color.white;);});
469                                 if((f24 > ~outmaxa) or: (f24 < ~outmina), {~z48.close;~z24.close;~z48 = (CompositeView(w, Rect((f24.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+240, ~nw, 2)).background = Color.white;);}, {~z24.close;~z48.close;~z24 = (CompositeView(w, Rect((f24.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+240, ~nw, 2)).background = Color.white;);});
470                                 */
471                                 b3.value = 1;
472                         };
473
474                         ~synthflow = {
475                                 case
476                                 {~la1.isRunning == true}{
477                                         (1.do({var a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,fs,rs,vol1,vol2,vol3,vol4,vol5,vol6,vol7,vol8,vol9,vol10,vol11,vol12,s1,s2,s3,s4,s5,s6,f1,f2,f3,f4,f5,f6,f7,f8,f9,f10,f11,f12,f13,f14,f15,f16,f17,f18,f19,f20,f21,f22,f23,f24,fs1,fs2,fs3,fs4,fs5,fs6,fd1,fd2,fd3,fd4,fd5,fd6,tune=0;
478                                                 #vol1,vol2,vol3,vol4,vol5,vol6,vol7,vol8,vol9,vol10,vol11,vol12 = [~vol1,~vol2,~vol3,~vol4,~vol5,~vol6,~vol7,~vol8,~vol9,~vol10,~vol11,~vol12];
479                                                 ~la1.set(\dur, ~f1, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f,    \vol, vol1, \tune, tune);  ~lb1.set(\dur, ~f2, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f, \vol, vol2, \tune, tune);
480                                                 ~lc1.set(\dur, ~f3, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f,      \vol, vol3, \tune, tune);  ~ld1.set(\dur, ~f4, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f, \vol, vol4, \tune, tune);
481                                                 ~le1.set(\dur, ~f5, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f,      \vol, vol5, \tune, tune);  ~lf1.set(\dur, ~f6, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f, \vol, vol6, \tune, tune);
482                                                 ~lg1.set(\dur, ~f7, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f,    \vol, vol7, \tune, tune);      }););
483                                 }
484                                 {~la.isRunning == true} {
485                                         (1.do({var a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,fs,rs,vol1,vol2,vol3,vol4,vol5,vol6,vol7,vol8,vol9,vol10,vol11,vol12,s1,s2,s3,s4,s5,s6,f1,f2,f3,f4,f5,f6,f7,f8,f9,f10,f11,f12,f13,f14,f15,f16,f17,f18,f19,f20,f21,f22,f23,f24,fs1,fs2,fs3,fs4,fs5,fs6,fd1,fd2,fd3,fd4,fd5,fd6,tune=0;
486                                                 #vol1,vol2,vol3,vol4,vol5,vol6,vol7,vol8,vol9,vol10,vol11,vol12 = [~vol1,~vol2,~vol3,~vol4,~vol5,~vol6,~vol7,~vol8,~vol9,~vol10,~vol11,~vol12];
487                                                 ~la.set(\dur, ~f1, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f,    \vol, vol1, \tune, tune);  ~lb.set(\dur, ~f2, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f, \vol, vol2, \tune, tune);
488                                                 ~lc.set(\dur, ~f3, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f,      \vol, vol3, \tune, tune);  ~ld.set(\dur, ~f4, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f, \vol, vol4, \tune, tune);
489                                                 ~le.set(\dur, ~f5, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f,      \vol, vol5, \tune, tune);  ~lf.set(\dur, ~f6, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f, \vol, vol6, \tune, tune);
490                                                 ~lg.set(\dur, ~f7, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f,    \vol, vol7, \tune, tune);
491                                         }););
492                                 };
493
494                                 if((~f1 > ~outmaxa) or: (~f1 < ~outmina), {~z25.close;~z1.close;~z25 = (CompositeView(w, Rect((~f1.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+10, ~nw, 2)).background = Color.white;);}, {~z1.close;~z25.close;~z1 = (CompositeView(w, Rect((~f1.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+10, ~nw, 2)).background = Color.white;);});
495                                 if((~f2 > ~outmaxa) or: (~f2 < ~outmina), {~z26.close;~z2.close;~z26 = (CompositeView(w, Rect((~f2.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+20, ~nw, 2)).background = Color.white;);}, {~z2.close;~z26.close;~z2 = (CompositeView(w, Rect((~f2.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+20, ~nw, 2)).background = Color.white;);});
496                                 if((~f3 > ~outmaxa) or: (~f3 < ~outmina), {~z27.close;~z3.close;~z27 = (CompositeView(w, Rect((~f3.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+30, ~nw, 2)).background = Color.white;);}, {~z3.close;~z27.close;~z3 = (CompositeView(w, Rect((~f3.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+30, ~nw, 2)).background = Color.white;);});
497                                 if((~f4 > ~outmaxa) or: (~f4 < ~outmina), {~z28.close;~z4.close;~z28 = (CompositeView(w, Rect((~f4.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+40, ~nw, 2)).background = Color.white;);}, {~z4.close;~z28.close;~z4 = (CompositeView(w, Rect((~f4.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+40, ~nw, 2)).background = Color.white;);});
498                                 if((~f5 > ~outmaxa) or: (~f5 < ~outmina), {~z29.close;~z5.close;~z29 = (CompositeView(w, Rect((~f5.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+50, ~nw, 2)).background = Color.white;);}, {~z5.close;~z29.close;~z5 = (CompositeView(w, Rect((~f5.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+50, ~nw, 2)).background = Color.white;);});
499                                 if((~f6 > ~outmaxa) or: (~f6 < ~outmina), {~z30.close;~z6.close;~z30 = (CompositeView(w, Rect((~f6.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+60, ~nw, 2)).background = Color.white;);}, {~z6.close;~z30.close;~z6 = (CompositeView(w, Rect((~f6.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+60, ~nw, 2)).background = Color.white;);});
500                                 if((~f7 > ~outmaxa) or: (~f7 < ~outmina), {~z31.close;~z7.close;~z31 = (CompositeView(w, Rect((~f7.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+70, ~nw, 2)).background = Color.white;);}, {~z7.close;~z31.close;~z7 = (CompositeView(w, Rect((~f7.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+70, ~nw, 2)).background = Color.white;);});
501                                 /*if((f8 > ~outmaxa) or: (f8 < ~outmina), {~z32.close;~z8.close;~z32 = (CompositeView(w, Rect((f8.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+80, ~nw, 2)).background = Color.white;);}, {~z8.close;~z32.close;~z8 = (CompositeView(w, Rect((f8.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+80 ~nw, 2)).background = Color.white;);});
502                                 if((f9 > ~outmaxa) or: (f9 < ~outmina), {~z33.close;~z9.close;~z33 = (CompositeView(w, Rect((f9.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+90, ~nw, 2)).background = Color.white;);}, {~z9.close;~z33.close;~z9 = (CompositeView(w, Rect((f9.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+90, ~nw, 2)).background = Color.white;);});
503                                 if((f10 > ~outmaxa) or: (f10 < ~outmina), {~z34.close;~z10.close;~z34 = (CompositeView(w, Rect((f10.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+100, ~nw, 2)).background = Color.white;);}, {~z10.close;~z34.close;~z10 = (CompositeView(w, Rect((f10.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+100, ~nw, 2)).background = Color.white;);});
504                                 if((f11 > ~outmaxa) or: (f11 < ~outmina), {~z35.close;~z11.close;~z35 = (CompositeView(w, Rect((f11.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+110, ~nw, 2)).background = Color.white;);}, {~z11.close;~z35.close;~z11 = (CompositeView(w, Rect((f11.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+110, ~nw, 2)).background = Color.white;);});
505                                 if((f12 > ~outmaxa) or: (f12 < ~outmina), {~z36.close;~z12.close;~z36 = (CompositeView(w, Rect((f12.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+120, ~nw, 2)).background = Color.white;);}, {~z12.close;~z36.close;~z12 = (CompositeView(w, Rect((f12.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+120, ~nw, 2)).background = Color.white;);});
506                                 *//*if((f13 > ~outmaxa) or: (f13 < ~outmina), {~z37.close;~z13.close;~z37 = (CompositeView(w, Rect((f13.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+130, ~nw, 2)).background = Color.white;);}, {~z13.close;~z37.close;~z13 = (CompositeView(w, Rect((f13.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+130, ~nw, 2)).background = Color.white;);});
507                                 if((f14 > ~outmaxa) or: (f14 < ~outmina), {~z38.close;~z14.close;~z38 = (CompositeView(w, Rect((f14.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+140, ~nw, 2)).background = Color.white;);}, {~z14.close;~z38.close;~z14 = (CompositeView(w, Rect((f14.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+140, ~nw, 2)).background = Color.white;);});
508                                 if((f15 > ~outmaxa) or: (f15 < ~outmina), {~z39.close;~z15.close;~z39 = (CompositeView(w, Rect((f15.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+150, ~nw, 2)).background = Color.white;);}, {~z15.close;~z39.close;~z15 = (CompositeView(w, Rect((f15.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+150, ~nw, 2)).background = Color.white;);});
509                                 if((f16 > ~outmaxa) or: (f16 < ~outmina), {~z40.close;~z16.close;~z40 = (CompositeView(w, Rect((f16.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+160, ~nw, 2)).background = Color.white;);}, {~z16.close;~z40.close;~z16 = (CompositeView(w, Rect((f16.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+160, ~nw, 2)).background = Color.white;);});
510                                 if((f17 > ~outmaxa) or: (f17 < ~outmina), {~z41.close;~z17.close;~z41 = (CompositeView(w, Rect((f17.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+170, ~nw, 2)).background = Color.white;);}, {~z17.close;~z41.close;~z17 = (CompositeView(w, Rect((f17.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+170, ~nw, 2)).background = Color.white;);});
511                                 if((f18 > ~outmaxa) or: (f18 < ~outmina), {~z42.close;~z18.close;~z42 = (CompositeView(w, Rect((f18.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+180, ~nw, 2)).background = Color.white;);}, {~z18.close;~z42.close;~z18 = (CompositeView(w, Rect((f18.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+180, ~nw, 2)).background = Color.white;);});
512                                 if((f19 > ~outmaxa) or: (f19 < ~outmina), {~z43.close;~z19.close;~z43 = (CompositeView(w, Rect((f19.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+190, ~nw, 2)).background = Color.white;);}, {~z19.close;~z43.close;~z19 = (CompositeView(w, Rect((f19.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+190, ~nw, 2)).background = Color.white;);});
513                                 */      /*if((f20 > ~outmaxa) or: (f20 < ~outmina), {~z44.close;~z20.close;~z44 = (CompositeView(w, Rect((f20.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+200, ~nw, 2)).background = Color.white;);}, {~z20.close;~z44.close;~z20 = (CompositeView(w, Rect((f20.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+200, ~nw, 2)).background = Color.white;);});
514                                 if((f21 > ~outmaxa) or: (f21 < ~outmina), {~z45.close;~z21.close;~z45 = (CompositeView(w, Rect((f21.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+210, ~nw, 2)).background = Color.white;);}, {~z21.close;~z45.close;~z21 = (CompositeView(w, Rect((f21.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+210, ~nw, 2)).background = Color.white;);});
515                                 if((f22 > ~outmaxa) or: (f22 < ~outmina), {~z46.close;~z22.close;~z46 = (CompositeView(w, Rect((f22.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+220, ~nw, 2)).background = Color.white;);}, {~z22.close;~z46.close;~z22 = (CompositeView(w, Rect((f22.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+220, ~nw, 2)).background = Color.white;);});
516                                 if((f23 > ~outmaxa) or: (f23 < ~outmina), {~z47.close;~z23.close;~z47 = (CompositeView(w, Rect((f23.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+230, ~nw, 2)).background = Color.white;);}, {~z23.close;~z47.close;~z23 = (CompositeView(w, Rect((f23.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+230, ~nw, 2)).background = Color.white;);});
517                                 if((f24 > ~outmaxa) or: (f24 < ~outmina), {~z48.close;~z24.close;~z48 = (CompositeView(w, Rect((f24.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+240, ~nw, 2)).background = Color.white;);}, {~z24.close;~z48.close;~z24 = (CompositeView(w, Rect((f24.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+240, ~nw, 2)).background = Color.white;);});
518                                 */
519                         };
520
521                         ~synthslide = {
522                                 case
523                                 {~la1.isRunning == true}{(//fprog
524                                         ~slideroutine = Routine({1.do({var a,b,c,d,e,f,fs,rs,vol1,vol2,vol3,vol4,vol5,vol6,vol7,vol8,vol9,vol10,vol11,vol12,s1,s2,s3,s4,s5,s6,f1,f2,f3,f4,f5,f6,f7,f8,f9,f10,f11,f12,f13,f14,f15,f16,f17,f18,f19,f20,f21,f22,f23,f24,fs1,fs2,fs3,fs4,fs5,fs6,fd1,fd2,fd3,fd4,fd5,fd6,tune=0;
525                                                 #vol1,vol2,vol3,vol4,vol5,vol6,vol7,vol8,vol9,vol10,vol11,vol12 = [~vol1,~vol2,~vol3,~vol4,~vol5,~vol6,~vol7,~vol8,~vol9,~vol10,~vol11,~vol12];
526                                                 ~slidedo.do({~slidecount=~slidecount-1;
527                                                         (
528                                                                 [ ~f1=~f1+g,~f2=~f2+h,~f3=~f3+i,~f4=~f4+j,~f5=~f5+k,~f6=~f6+l,~f7=~f7+m ];
529                                                                 ~la1.set(\dur, ~f1, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f,    \vol, vol1, \tune, tune);  ~lb1.set(\dur, ~f2, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f, \vol, vol2, \tune, tune);
530                                                                 ~lc1.set(\dur, ~f3, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f,      \vol, vol3, \tune, tune);  ~ld1.set(\dur, ~f4, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f, \vol, vol4, \tune, tune);
531                                                                 ~le1.set(\dur, ~f5, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f,      \vol, vol5, \tune, tune);  ~lf1.set(\dur, ~f6, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f, \vol, vol6, \tune, tune);
532                                                                 ~lg1.set(\dur, ~f7, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f,    \vol, vol7, \tune, tune);
533                                                         );
534
535                                                         {if(~slidecount==0,{if((~f1 > ~outmaxa) or: (~f1 < ~outmina), {~z25.close;~z1.close;~z25 = (CompositeView(w, Rect((~f1.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+10, ~nw, 2)).background = Color.white;);}, {~z1.close;~z25.close;~z1 = (CompositeView(w, Rect((~f1.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+10, ~nw, 2)).background = Color.white;);});
536                                                                 if((~f2 > ~outmaxa) or: (~f2 < ~outmina), {~z26.close;~z2.close;~z26 = (CompositeView(w, Rect((~f2.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+20, ~nw, 2)).background = Color.white;);}, {~z2.close;~z26.close;~z2 = (CompositeView(w, Rect((~f2.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+20, ~nw, 2)).background = Color.white;);});
537                                                                 if((~f3 > ~outmaxa) or: (~f3 < ~outmina), {~z27.close;~z3.close;~z27 = (CompositeView(w, Rect((~f3.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+30, ~nw, 2)).background = Color.white;);}, {~z3.close;~z27.close;~z3 = (CompositeView(w, Rect((~f3.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+30, ~nw, 2)).background = Color.white;);});
538                                                                 if((~f4 > ~outmaxa) or: (~f4 < ~outmina), {~z28.close;~z4.close;~z28 = (CompositeView(w, Rect((~f4.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+40, ~nw, 2)).background = Color.white;);}, {~z4.close;~z28.close;~z4 = (CompositeView(w, Rect((~f4.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+40, ~nw, 2)).background = Color.white;);});
539                                                                 if((~f5 > ~outmaxa) or: (~f5 < ~outmina), {~z29.close;~z5.close;~z29 = (CompositeView(w, Rect((~f5.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+50, ~nw, 2)).background = Color.white;);}, {~z5.close;~z29.close;~z5 = (CompositeView(w, Rect((~f5.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+50, ~nw, 2)).background = Color.white;);});
540                                                                 if((~f6 > ~outmaxa) or: (~f6 < ~outmina), {~z30.close;~z6.close;~z30 = (CompositeView(w, Rect((~f6.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+60, ~nw, 2)).background = Color.white;);}, {~z6.close;~z30.close;~z6 = (CompositeView(w, Rect((~f6.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+60, ~nw, 2)).background = Color.white;);});
541                                                                 if((~f7 > ~outmaxa) or: (~f7 < ~outmina), {~z31.close;~z7.close;~z31 = (CompositeView(w, Rect((~f7.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+70, ~nw, 2)).background = Color.white;);}, {~z7.close;~z31.close;~z7 = (CompositeView(w, Rect((~f7.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+70, ~nw, 2)).background = Color.white;);});
542                                                                 /*if((f8 > ~outmaxa) or: (f8 < ~outmina), {~z32.close;~z8.close;~z32 = (CompositeView(w, Rect((f8.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+80, ~nw, 2)).background = Color.white;);}, {~z8.close;~z32.close;~z8 = (CompositeView(w, Rect((f8.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+80 ~nw, 2)).background = Color.white;);});
543                                                                 if((f9 > ~outmaxa) or: (f9 < ~outmina), {~z33.close;~z9.close;~z33 = (CompositeView(w, Rect((f9.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+90, ~nw, 2)).background = Color.white;);}, {~z9.close;~z33.close;~z9 = (CompositeView(w, Rect((f9.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+90, ~nw, 2)).background = Color.white;);});
544                                                                 if((f10 > ~outmaxa) or: (f10 < ~outmina), {~z34.close;~z10.close;~z34 = (CompositeView(w, Rect((f10.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+100, ~nw, 2)).background = Color.white;);}, {~z10.close;~z34.close;~z10 = (CompositeView(w, Rect((f10.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+100, ~nw, 2)).background = Color.white;);});
545                                                                 if((f11 > ~outmaxa) or: (f11 < ~outmina), {~z35.close;~z11.close;~z35 = (CompositeView(w, Rect((f11.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+110, ~nw, 2)).background = Color.white;);}, {~z11.close;~z35.close;~z11 = (CompositeView(w, Rect((f11.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+110, ~nw, 2)).background = Color.white;);});
546                                                                 if((f12 > ~outmaxa) or: (f12 < ~outmina), {~z36.close;~z12.close;~z36 = (CompositeView(w, Rect((f12.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+120, ~nw, 2)).background = Color.white;);}, {~z12.close;~z36.close;~z12 = (CompositeView(w, Rect((f12.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+120, ~nw, 2)).background = Color.white;);});
547                                                                 *//*if((f13 > ~outmaxa) or: (f13 < ~outmina), {~z37.close;~z13.close;~z37 = (CompositeView(w, Rect((f13.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+130, ~nw, 2)).background = Color.white;);}, {~z13.close;~z37.close;~z13 = (CompositeView(w, Rect((f13.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+130, ~nw, 2)).background = Color.white;);});
548                                                                 if((f14 > ~outmaxa) or: (f14 < ~outmina), {~z38.close;~z14.close;~z38 = (CompositeView(w, Rect((f14.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+140, ~nw, 2)).background = Color.white;);}, {~z14.close;~z38.close;~z14 = (CompositeView(w, Rect((f14.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+140, ~nw, 2)).background = Color.white;);});
549                                                                 if((f15 > ~outmaxa) or: (f15 < ~outmina), {~z39.close;~z15.close;~z39 = (CompositeView(w, Rect((f15.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+150, ~nw, 2)).background = Color.white;);}, {~z15.close;~z39.close;~z15 = (CompositeView(w, Rect((f15.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+150, ~nw, 2)).background = Color.white;);});
550                                                                 if((f16 > ~outmaxa) or: (f16 < ~outmina), {~z40.close;~z16.close;~z40 = (CompositeView(w, Rect((f16.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+160, ~nw, 2)).background = Color.white;);}, {~z16.close;~z40.close;~z16 = (CompositeView(w, Rect((f16.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+160, ~nw, 2)).background = Color.white;);});
551                                                                 if((f17 > ~outmaxa) or: (f17 < ~outmina), {~z41.close;~z17.close;~z41 = (CompositeView(w, Rect((f17.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+170, ~nw, 2)).background = Color.white;);}, {~z17.close;~z41.close;~z17 = (CompositeView(w, Rect((f17.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+170, ~nw, 2)).background = Color.white;);});
552                                                                 if((f18 > ~outmaxa) or: (f18 < ~outmina), {~z42.close;~z18.close;~z42 = (CompositeView(w, Rect((f18.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+180, ~nw, 2)).background = Color.white;);}, {~z18.close;~z42.close;~z18 = (CompositeView(w, Rect((f18.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+180, ~nw, 2)).background = Color.white;);});
553                                                                 if((f19 > ~outmaxa) or: (f19 < ~outmina), {~z43.close;~z19.close;~z43 = (CompositeView(w, Rect((f19.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+190, ~nw, 2)).background = Color.white;);}, {~z19.close;~z43.close;~z19 = (CompositeView(w, Rect((f19.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+190, ~nw, 2)).background = Color.white;);});
554                                                                 */      /*if((f20 > ~outmaxa) or: (f20 < ~outmina), {~z44.close;~z20.close;~z44 = (CompositeView(w, Rect((f20.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+200, ~nw, 2)).background = Color.white;);}, {~z20.close;~z44.close;~z20 = (CompositeView(w, Rect((f20.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+200, ~nw, 2)).background = Color.white;);});
555                                                                 if((f21 > ~outmaxa) or: (f21 < ~outmina), {~z45.close;~z21.close;~z45 = (CompositeView(w, Rect((f21.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+210, ~nw, 2)).background = Color.white;);}, {~z21.close;~z45.close;~z21 = (CompositeView(w, Rect((f21.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+210, ~nw, 2)).background = Color.white;);});
556                                                                 if((f22 > ~outmaxa) or: (f22 < ~outmina), {~z46.close;~z22.close;~z46 = (CompositeView(w, Rect((f22.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+220, ~nw, 2)).background = Color.white;);}, {~z22.close;~z46.close;~z22 = (CompositeView(w, Rect((f22.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+220, ~nw, 2)).background = Color.white;);});
557                                                                 if((f23 > ~outmaxa) or: (f23 < ~outmina), {~z47.close;~z23.close;~z47 = (CompositeView(w, Rect((f23.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+230, ~nw, 2)).background = Color.white;);}, {~z23.close;~z47.close;~z23 = (CompositeView(w, Rect((f23.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+230, ~nw, 2)).background = Color.white;);});
558                                                                 if((f24 > ~outmaxa) or: (f24 < ~outmina), {~z48.close;~z24.close;~z48 = (CompositeView(w, Rect((f24.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+240, ~nw, 2)).background = Color.white;);}, {~z24.close;~z48.close;~z24 = (CompositeView(w, Rect((f24.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+240, ~nw, 2)).background = Color.white;);});
559                                                         */});}.defer;
560
561                                                         (~slidetime/~slidedo).wait;});});}).play;);}
562                                 {~la.isRunning == true} {(//fprog
563                                         ~slideroutine = Routine({1.do({var a,b,c,d,e,f,fs,rs,vol1,vol2,vol3,vol4,vol5,vol6,vol7,vol8,vol9,vol10,vol11,vol12,s1,s2,s3,s4,s5,s6,f1,f2,f3,f4,f5,f6,f7,f8,f9,f10,f11,f12,f13,f14,f15,f16,f17,f18,f19,f20,f21,f22,f23,f24,fs1,fs2,fs3,fs4,fs5,fs6,fd1,fd2,fd3,fd4,fd5,fd6,tune=0;
564                                                 #vol1,vol2,vol3,vol4,vol5,vol6,vol7,vol8,vol9,vol10,vol11,vol12 = [~vol1,~vol2,~vol3,~vol4,~vol5,~vol6,~vol7,~vol8,~vol9,~vol10,~vol11,~vol12];
565                                                 ~slidedo.do({~slidecount=~slidecount-1;
566                                                         (
567                                                                 [ ~f1=~f1+g,~f2=~f2+h,~f3=~f3+i,~f4=~f4+j,~f5=~f5+k,~f6=~f6+l,~f7=~f7+m ];
568                                                                 ~la1.set(\dur, ~f1, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f,    \vol, vol1, \tune, tune);  ~lb.set(\dur, ~f2, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f, \vol, vol2, \tune, tune);
569                                                                 ~lc.set(\dur, ~f3, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f,      \vol, vol3, \tune, tune);  ~ld.set(\dur, ~f4, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f, \vol, vol4, \tune, tune);
570                                                                 ~le.set(\dur, ~f5, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f,      \vol, vol5, \tune, tune);  ~lf.set(\dur, ~f6, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f, \vol, vol6, \tune, tune);
571                                                                 ~lg.set(\dur, ~f7, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f,    \vol, vol7, \tune, tune);
572
573                                                         );
574
575                                                         {if(~slidecount==0,{if((~f1 > ~outmaxa) or: (~f1 < ~outmina), {~z25.close;~z1.close;~z25 = (CompositeView(w, Rect((~f1.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+10, ~nw, 2)).background = Color.white;);}, {~z1.close;~z25.close;~z1 = (CompositeView(w, Rect((~f1.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+10, ~nw, 2)).background = Color.white;);});
576                                                                 if((~f2 > ~outmaxa) or: (~f2 < ~outmina), {~z26.close;~z2.close;~z26 = (CompositeView(w, Rect((~f2.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+20, ~nw, 2)).background = Color.white;);}, {~z2.close;~z26.close;~z2 = (CompositeView(w, Rect((~f2.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+20, ~nw, 2)).background = Color.white;);});
577                                                                 if((~f3 > ~outmaxa) or: (~f3 < ~outmina), {~z27.close;~z3.close;~z27 = (CompositeView(w, Rect((~f3.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+30, ~nw, 2)).background = Color.white;);}, {~z3.close;~z27.close;~z3 = (CompositeView(w, Rect((~f3.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+30, ~nw, 2)).background = Color.white;);});
578                                                                 if((~f4 > ~outmaxa) or: (~f4 < ~outmina), {~z28.close;~z4.close;~z28 = (CompositeView(w, Rect((~f4.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+40, ~nw, 2)).background = Color.white;);}, {~z4.close;~z28.close;~z4 = (CompositeView(w, Rect((~f4.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+40, ~nw, 2)).background = Color.white;);});
579                                                                 if((~f5 > ~outmaxa) or: (~f5 < ~outmina), {~z29.close;~z5.close;~z29 = (CompositeView(w, Rect((~f5.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+50, ~nw, 2)).background = Color.white;);}, {~z5.close;~z29.close;~z5 = (CompositeView(w, Rect((~f5.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+50, ~nw, 2)).background = Color.white;);});
580                                                                 if((~f6 > ~outmaxa) or: (~f6 < ~outmina), {~z30.close;~z6.close;~z30 = (CompositeView(w, Rect((~f6.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+60, ~nw, 2)).background = Color.white;);}, {~z6.close;~z30.close;~z6 = (CompositeView(w, Rect((~f6.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+60, ~nw, 2)).background = Color.white;);});
581                                                                 if((~f7 > ~outmaxa) or: (~f7 < ~outmina), {~z31.close;~z7.close;~z31 = (CompositeView(w, Rect((~f7.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+70, ~nw, 2)).background = Color.white;);}, {~z7.close;~z31.close;~z7 = (CompositeView(w, Rect((~f7.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+70, ~nw, 2)).background = Color.white;);});
582                                                                 /*if((f8 > ~outmaxa) or: (f8 < ~outmina), {~z32.close;~z8.close;~z32 = (CompositeView(w, Rect((f8.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+80, ~nw, 2)).background = Color.white;);}, {~z8.close;~z32.close;~z8 = (CompositeView(w, Rect((f8.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+80 ~nw, 2)).background = Color.white;);});
583                                                                 if((f9 > ~outmaxa) or: (f9 < ~outmina), {~z33.close;~z9.close;~z33 = (CompositeView(w, Rect((f9.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+90, ~nw, 2)).background = Color.white;);}, {~z9.close;~z33.close;~z9 = (CompositeView(w, Rect((f9.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+90, ~nw, 2)).background = Color.white;);});
584                                                                 if((f10 > ~outmaxa) or: (f10 < ~outmina), {~z34.close;~z10.close;~z34 = (CompositeView(w, Rect((f10.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+100, ~nw, 2)).background = Color.white;);}, {~z10.close;~z34.close;~z10 = (CompositeView(w, Rect((f10.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+100, ~nw, 2)).background = Color.white;);});
585                                                                 if((f11 > ~outmaxa) or: (f11 < ~outmina), {~z35.close;~z11.close;~z35 = (CompositeView(w, Rect((f11.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+110, ~nw, 2)).background = Color.white;);}, {~z11.close;~z35.close;~z11 = (CompositeView(w, Rect((f11.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+110, ~nw, 2)).background = Color.white;);});
586                                                                 if((f12 > ~outmaxa) or: (f12 < ~outmina), {~z36.close;~z12.close;~z36 = (CompositeView(w, Rect((f12.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+120, ~nw, 2)).background = Color.white;);}, {~z12.close;~z36.close;~z12 = (CompositeView(w, Rect((f12.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+120, ~nw, 2)).background = Color.white;);});
587                                                                 *//*if((f13 > ~outmaxa) or: (f13 < ~outmina), {~z37.close;~z13.close;~z37 = (CompositeView(w, Rect((f13.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+130, ~nw, 2)).background = Color.white;);}, {~z13.close;~z37.close;~z13 = (CompositeView(w, Rect((f13.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+130, ~nw, 2)).background = Color.white;);});
588                                                                 if((f14 > ~outmaxa) or: (f14 < ~outmina), {~z38.close;~z14.close;~z38 = (CompositeView(w, Rect((f14.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+140, ~nw, 2)).background = Color.white;);}, {~z14.close;~z38.close;~z14 = (CompositeView(w, Rect((f14.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+140, ~nw, 2)).background = Color.white;);});
589                                                                 if((f15 > ~outmaxa) or: (f15 < ~outmina), {~z39.close;~z15.close;~z39 = (CompositeView(w, Rect((f15.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+150, ~nw, 2)).background = Color.white;);}, {~z15.close;~z39.close;~z15 = (CompositeView(w, Rect((f15.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+150, ~nw, 2)).background = Color.white;);});
590                                                                 if((f16 > ~outmaxa) or: (f16 < ~outmina), {~z40.close;~z16.close;~z40 = (CompositeView(w, Rect((f16.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+160, ~nw, 2)).background = Color.white;);}, {~z16.close;~z40.close;~z16 = (CompositeView(w, Rect((f16.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+160, ~nw, 2)).background = Color.white;);});
591                                                                 if((f17 > ~outmaxa) or: (f17 < ~outmina), {~z41.close;~z17.close;~z41 = (CompositeView(w, Rect((f17.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+170, ~nw, 2)).background = Color.white;);}, {~z17.close;~z41.close;~z17 = (CompositeView(w, Rect((f17.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+170, ~nw, 2)).background = Color.white;);});
592                                                                 if((f18 > ~outmaxa) or: (f18 < ~outmina), {~z42.close;~z18.close;~z42 = (CompositeView(w, Rect((f18.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+180, ~nw, 2)).background = Color.white;);}, {~z18.close;~z42.close;~z18 = (CompositeView(w, Rect((f18.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+180, ~nw, 2)).background = Color.white;);});
593                                                                 if((f19 > ~outmaxa) or: (f19 < ~outmina), {~z43.close;~z19.close;~z43 = (CompositeView(w, Rect((f19.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+190, ~nw, 2)).background = Color.white;);}, {~z19.close;~z43.close;~z19 = (CompositeView(w, Rect((f19.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+190, ~nw, 2)).background = Color.white;);});
594                                                                 */      /*if((f20 > ~outmaxa) or: (f20 < ~outmina), {~z44.close;~z20.close;~z44 = (CompositeView(w, Rect((f20.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+200, ~nw, 2)).background = Color.white;);}, {~z20.close;~z44.close;~z20 = (CompositeView(w, Rect((f20.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+200, ~nw, 2)).background = Color.white;);});
595                                                                 if((f21 > ~outmaxa) or: (f21 < ~outmina), {~z45.close;~z21.close;~z45 = (CompositeView(w, Rect((f21.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+210, ~nw, 2)).background = Color.white;);}, {~z21.close;~z45.close;~z21 = (CompositeView(w, Rect((f21.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+210, ~nw, 2)).background = Color.white;);});
596                                                                 if((f22 > ~outmaxa) or: (f22 < ~outmina), {~z46.close;~z22.close;~z46 = (CompositeView(w, Rect((f22.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+220, ~nw, 2)).background = Color.white;);}, {~z22.close;~z46.close;~z22 = (CompositeView(w, Rect((f22.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+220, ~nw, 2)).background = Color.white;);});
597                                                                 if((f23 > ~outmaxa) or: (f23 < ~outmina), {~z47.close;~z23.close;~z47 = (CompositeView(w, Rect((f23.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+230, ~nw, 2)).background = Color.white;);}, {~z23.close;~z47.close;~z23 = (CompositeView(w, Rect((f23.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+230, ~nw, 2)).background = Color.white;);});
598                                                                 if((f24 > ~outmaxa) or: (f24 < ~outmina), {~z48.close;~z24.close;~z48 = (CompositeView(w, Rect((f24.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+240, ~nw, 2)).background = Color.white;);}, {~z24.close;~z48.close;~z24 = (CompositeView(w, Rect((f24.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+240, ~nw, 2)).background = Color.white;);});
599                                                         */});}.defer;
600
601                                                         (~slidetime/~slidedo).wait;});});}).play;);};
602                         };
603
604                         ~synthpause = {(
605                                 case
606                                 {~la1.isRunning == true}{
607                                         (1.do({var a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,fs,rs,vol1,vol2,vol3,vol4,vol5,vol6,vol7,vol8,vol9,vol10,vol11,vol12,s1,s2,s3,s4,s5,s6,f1,f2,f3,f4,f5,f6,f7,f8,f9,f10,f11,f12,f13,f14,f15,f16,f17,f18,f19,f20,f21,f22,f23,f24,fs1,fs2,fs3,fs4,fs5,fs6,fd1,fd2,fd3,fd4,fd5,fd6,tune=0;
608                                                 #vol1,vol2,vol3,vol4,vol5,vol6,vol7,vol8,vol9,vol10,vol11,vol12 = [~vol1,~vol2,~vol3,~vol4,~vol5,~vol6,~vol7,~vol8,~vol9,~vol10,~vol11,~vol12];
609                                                 #f1,f2,f3,f4,f5,f6,f7,f8,f9,f10,f11,f12/*,f13,f14,f15,f16,f17,f18,f19,f20,f21,f22,f23,f24*/ = [0,0,0,0,0,0,0,0,0,0,0,0];
610                                                 ~la1.set(\dur, f1, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f,    \vol, vol1, \tune, tune);  ~lb1.set(\dur, f2, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f, \vol, vol2, \tune, tune);
611                                                 ~lc1.set(\dur, f3, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f,      \vol, vol3, \tune, tune);  ~ld1.set(\dur, f4, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f, \vol, vol4, \tune, tune);
612                                                 ~le1.set(\dur, f5, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f,      \vol, vol5, \tune, tune);  ~lf1.set(\dur, f6, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f, \vol, vol6, \tune, tune);
613                                                 ~lg1.set(\dur, f7, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f,    \vol, vol7, \tune, tune);       }););
614                                 }
615                                 {~la.isRunning == true} {
616                                         (1.do({var a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,fs,rs,vol1,vol2,vol3,vol4,vol5,vol6,vol7,vol8,vol9,vol10,vol11,vol12,s1,s2,s3,s4,s5,s6,f1,f2,f3,f4,f5,f6,f7,f8,f9,f10,f11,f12,f13,f14,f15,f16,f17,f18,f19,f20,f21,f22,f23,f24,fs1,fs2,fs3,fs4,fs5,fs6,fd1,fd2,fd3,fd4,fd5,fd6,tune=0;
617                                                 #vol1,vol2,vol3,vol4,vol5,vol6,vol7,vol8,vol9,vol10,vol11,vol12 = [~vol1,~vol2,~vol3,~vol4,~vol5,~vol6,~vol7,~vol8,~vol9,~vol10,~vol11,~vol12];
618                                                 #f1,f2,f3,f4,f5,f6,f7,f8,f9,f10,f11,f12/*,f13,f14,f15,f16,f17,f18,f19,f20,f21,f22,f23,f24*/ = [0,0,0,0,0,0,0,0,0,0,0,0];
619                                                 ~la.set(\dur, f1, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f,    \vol, vol1, \tune, tune);  ~lb.set(\dur, f2, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f, \vol, vol2, \tune, tune);
620                                                 ~lc.set(\dur, f3, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f,      \vol, vol3, \tune, tune);  ~ld.set(\dur, f4, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f, \vol, vol4, \tune, tune);
621                                                 ~le.set(\dur, f5, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f,      \vol, vol5, \tune, tune);  ~lf.set(\dur, f6, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f, \vol, vol6, \tune, tune);
622                                                 ~lg.set(\dur, f7, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f,    \vol, vol7, \tune, tune);
623                                         }););
624                                 };
625                                 );
626                         };
627
628                         ~synthfree = {
629                                 (
630                                         case
631                                         {((~la.isRunning == false) and: (~la1.isRunning == false)) or: ~la1.isRunning == true}{
632                                                 (1.do({var a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,fs,rs,vol1,vol2,vol3,vol4,vol5,vol6,vol7,vol8,vol9,vol10,vol11,vol12,s1,s2,s3,s4,s5,s6,f1,f2,f3,f4,f5,f6,f7,f8,f9,f10,f11,f12,f13,f14,f15,f16,f17,f18,f19,f20,f21,f22,f23,f24,fs1,fs2,fs3,fs4,fs5,fs6,fd1,fd2,fd3,fd4,fd5,fd6,tune=0;
633                                                         #vol1,vol2,vol3,vol4,vol5,vol6,vol7,vol8,vol9,vol10,vol11,vol12 = [~vol1,~vol2,~vol3,~vol4,~vol5,~vol6,~vol7,~vol8,~vol9,~vol10,~vol11,~vol12];
634                                                         #f1,f2,f3,f4,f5,f6,f7,f8,f9,f10,f11,f12 = [ 0,0,0,0,0,0,0,0,0,0,0,0 ];
635                                                         ~la1.set(\dur, f1, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f,    \vol, vol1, \tune, tune);  ~lb1.set(\dur, f2, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f, \vol, vol2, \tune, tune);
636                                                         ~lc1.set(\dur, f3, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f,      \vol, vol3, \tune, tune);  ~ld1.set(\dur, f4, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f, \vol, vol4, \tune, tune);
637                                                         ~le1.set(\dur, f5, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f,      \vol, vol5, \tune, tune);  ~lf1.set(\dur, f6, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f, \vol, vol6, \tune, tune);
638                                                         ~lg1.set(\dur, f7, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f,    \vol, vol7, \tune, tune);       }););
639                                                 AppClock.sched(0.161803398875,{
640                                                         ([~la1,~lb1,~lc1,~ld1,~le1,~lf1,~lg1].do(_.free)); ~slideroutine.stop;
641                                                 });
642                                         }
643                                         {~la.isRunning == true}{
644                                                 (1.do({var a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,fs,rs,vol1,vol2,vol3,vol4,vol5,vol6,vol7,vol8,vol9,vol10,vol11,vol12,s1,s2,s3,s4,s5,s6,f1,f2,f3,f4,f5,f6,f7,f8,f9,f10,f11,f12,f13,f14,f15,f16,f17,f18,f19,f20,f21,f22,f23,f24,fs1,fs2,fs3,fs4,fs5,fs6,fd1,fd2,fd3,fd4,fd5,fd6,tune=0;
645                                                         #vol1,vol2,vol3,vol4,vol5,vol6,vol7,vol8,vol9,vol10,vol11,vol12 = [~vol1,~vol2,~vol3,~vol4,~vol5,~vol6,~vol7,~vol8,~vol9,~vol10,~vol11,~vol12];
646                                                         #f1,f2,f3,f4,f5,f6,f7,f8,f9,f10,f11,f12 = [ 0,0,0,0,0,0,0,0,0,0,0,0 ];
647                                                         ~la.set(\dur, f1, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f,    \vol, vol1, \tune, tune);  ~lb.set(\dur, f2, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f, \vol, vol2, \tune, tune);
648                                                         ~lc.set(\dur, f3, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f,      \vol, vol3, \tune, tune);  ~ld.set(\dur, f4, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f, \vol, vol4, \tune, tune);
649                                                         ~le.set(\dur, f5, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f,      \vol, vol5, \tune, tune);  ~lf.set(\dur, f6, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f, \vol, vol6, \tune, tune);
650                                                         ~lg.set(\dur, f7, \a, a, \b, b, \c, c, \d, d, \e, e, \f, f,    \vol, vol7, \tune, tune);        }););
651                                                 AppClock.sched(0.161803398875,{
652                                                         ([~la,~lb,~lc,~ld,~le,~lf,~lg].do(_.free)); ~slideroutine.stop;
653                                                 });
654                                         };
655                                 );
656                         };
657
658                         case
659                         {~slot1 == nil}{""}
660                         {~slot2 == nil}{""}
661                         {~slot3 == nil}{""}
662                         {~slot4 == nil}{""}
663                         {~slot5 == nil}{""}
664                         {~slot6 == nil}{""}
665                         {~slot7 == nil}{""}
666                         {~slot8 == nil}{""};
667
668                         ~timevals = {(~tst = TextView(w, Rect(~tspl,~tspt, ~tspw, ~tsph)).background_(Color.black);
669                                 (~tst.string =
670                                         "o1:_"++~time1o.value.asString++"_f1:_"++~time1f.value.asString++"_s1:_"++~time1s.value.asString++"\n" ++
671                                         "o2:_"++~time2o.value.asString++"_f2:_"++~time2f.value.asString++"_s2:_"++~time2s.value.asString++"\n" ++
672                                         "o3:_"++~time3o.value.asString++"_f3:_"++~time3f.value.asString++"_s3:_"++~time3s.value.asString++"\n" ++
673                                         "o4:_"++~time4o.value.asString++"_f4:_"++~time4f.value.asString++"_s4:_"++~time4s.value.asString++"\n" ++
674                                         "o5:_"++~time5o.value.asString++"_f5:_"++~time5f.value.asString++"_s5:_"++~time5s.value.asString++"\n" ++
675                                         "o6:_"++~time6o.value.asString++"_f6:_"++~time6f.value.asString++"_s6:_"++~time6s.value.asString++"\n" ++
676                                         "o7:_"++~time7o.value.asString++"_f7:_"++~time7f.value.asString++"_s7:_"++~time7s.value.asString++"\n" ++
677                                         "o8:_"++~time8o.value.asString++"_f8:_"++~time8f.value.asString++"_s8:_"++~time8s.value.asString++"\n" ++"\n" ++
678                                         if(~slot8 != ~slot, {
679                                                 (~slot1 = ~slot2).asString++"\n" ++
680                                                 (~slot2 = ~slot3).asString++"\n" ++
681                                                 (~slot3 = ~slot4).asString++"\n" ++
682                                                 (~slot4 = ~slot5).asString++"\n" ++
683                                                 (~slot5 = ~slot6).asString++"\n" ++
684                                                 (~slot6 = ~slot7).asString++"\n" ++
685                                                 (~slot7 = ~slot8).asString++"\n" ++
686                                                 (~slot8 = ~slot).asString;
687                                                 },{
688                                                         (~slot1).asString++"\n" ++
689                                                         (~slot2).asString++"\n" ++
690                                                         (~slot3).asString++"\n" ++
691                                                         (~slot4).asString++"\n" ++
692                                                         (~slot5).asString++"\n" ++
693                                                         (~slot6).asString++"\n" ++
694                                                         (~slot7).asString++"\n" ++
695                                                         (~slot8).asString;
696                                         });
697
698                                 );
699                                 ~tst.stringColor = Color.white;
700                         )};
701
702                         ~numsynthsfunc = {
703                                 if((~numsynths != nil) or: (~numsynths.isPlaying == true), {~numsynths.stop;});
704                                 ~numsynths = Routine({inf.do({if((s.numSynths > 7) and: (3.wait; s.numSynths > 7) and: (6.wait; s.numSynths > 7), {
705
706                                         AppClock.sched(0, {
707                                                 if(~numsynthmessage != nil, {~numsynthmessage.close;});
708                                                 ~numsynthmessage = View(w, Rect(Window.screenBounds.width-(340+46),Window.screenBounds.height-(340+46/1.6180339887499)-110,340+46,340+46/1.6180339887499)).background_(Color.black).front;
709                                                 ~numsynthmessagestring = StaticText(~numsynthmessage, Rect(0,0,340+46,340+46/1.6180339887499)).background_(Color.black);
710                                                 ~numsynthmessagestring.align = \topLeft;
711                                                 ~numsynthmessagestring.string ="Warning:"++"\n"++"\n"++"More than the normal amount of synths are currently running. It is recommended to free the server by pressing "+"ctrl/cmd - period".quote+" and then pressing the "+"ok".quote+" button. Otherwise, you can press the "+"cancel".quote+" button to allow the synths to keep running. If you press the "+"cancel".quote+" button this message will not show again unless "+"synth0".quote+" has been pressed.";
712                                                 ~numsynthmessagestring.stringColor = Color.white;
713                                                 ~numsynthmessagebutton1 = Button.new(~numsynthmessage,Rect(320+46-100,340/1.6180339887499-30,46,46/1.6180339887499)).states_([["ok",Color.white,Color.black]]).action_({AppClock.sched(0, {~numsynthmessage.close; ~numsynths.play; ~midifunc.value;});});
714                                                 ~numsynthmessagebutton2 = Button.new(~numsynthmessage,Rect(120-46,340/1.6180339887499-30,46,46/1.6180339887499)).states_([["cancel",Color.white,Color.black]]).action_({AppClock.sched(0, {~numsynths.stop; ~numsynthmessage.close;});});
715                                                 ~numsynthmessage.front;
716                                         });
717                                 }); 1.wait;});}).play;
718                         };
719
720                         ~numsynthsfunc.value;
721
722                         view.mouseDownAction = {
723                                 |v, x, y, mod, butNum|
724                                 point = [x,y];
725                                 if(butNum == 0, { v.refresh;
726
727                                         ~tgrid = 30;
728                                         ~bgrid = Window.screenBounds.height-(Window.screenBounds.height/1.6180339887499)+30;
729
730                                         case
731                                         {y<~tgrid} {nil}
732                                         {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)}  {~z1.close;~z1 = (CompositeView(w, Rect(x, y, ~nw, 2)).background = Color.white;)}
733                                         {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)}  {~z2.close;~z2 = (CompositeView(w, Rect(x, y, ~nw, 2)).background = Color.white;)}
734                                         {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)}  {~z3.close;~z3 = (CompositeView(w, Rect(x, y, ~nw, 2)).background = Color.white;)}
735                                         {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)}  {~z4.close;~z4 = (CompositeView(w, Rect(x, y, ~nw, 2)).background = Color.white;)}
736                                         {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)}  {~z5.close;~z5 = (CompositeView(w, Rect(x, y, ~nw, 2)).background = Color.white;)}
737                                         {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)}  {~z6.close;~z6 = (CompositeView(w, Rect(x, y, ~nw, 2)).background = Color.white;)}
738                                         {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {~z7.close;~z7 = (CompositeView(w, Rect(x, y, ~nw, 2)).background = Color.white;)}
739                                         {y>~tgrid and: y<~bgrid} {nil}
740                                         {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {~z1.close;~z1 = (CompositeView(w, Rect(x, y, ~nw, 2)).background = Color.white;)}
741                                         {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {~z2.close;~z2 = (CompositeView(w, Rect(x, y, ~nw, 2)).background = Color.white;)}
742                                         {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {~z3.close;~z3 = (CompositeView(w, Rect(x, y, ~nw, 2)).background = Color.white;)}
743                                         {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {~z4.close;~z4 = (CompositeView(w, Rect(x, y, ~nw, 2)).background = Color.white;)}
744                                         {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {~z5.close;~z5 = (CompositeView(w, Rect(x, y, ~nw, 2)).background = Color.white;)}
745                                         {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {~z6.close;~z6 = (CompositeView(w, Rect(x, y, ~nw, 2)).background = Color.white;)}
746                                         {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {~z7.close;~z7 = (CompositeView(w, Rect(x, y, ~nw, 2)).background = Color.white;)}
747                                 }, {});
748
749                                 ~tgrid = 30;
750                                 ~bgrid = Window.screenBounds.height-(Window.screenBounds.height/1.6180339887499)+30;
751
752                                 case
753                                 {~la.isRunning == true}{
754                                         case
755                                         {y<~tgrid} {nil}
756                                         {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {
757                                                 ~la.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value);~f1=q.value; ~undof1=~f1;}
758                                         {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {
759                                                 ~lb.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value);~f2=q.value; ~undof2=~f2;}
760                                         {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {
761                                                 ~lc.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value);~f3=q.value; ~undof3=~f3;}
762                                         {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {
763                                                 ~ld.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value);~f4=q.value; ~undof4=~f4;}
764                                         {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {
765                                                 ~le.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value);~f5=q.value; ~undof5=~f5;}
766                                         {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {
767                                                 ~lf.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value);~f6=q.value; ~undof6=~f6;}
768                                         {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {
769                                                 ~lg.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value);~f7=q.value; ~undof7=~f7;}
770                                         {y>~tgrid and: y<~bgrid} {nil}
771                                         {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {
772                                                 ~la.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value);~f1=q.value; ~undof1=~f1;}
773                                         {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {
774                                                 ~lb.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value);~f2=q.value; ~undof2=~f2;}
775                                         {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {
776                                                 ~lc.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value);~f3=q.value; ~undof3=~f3;}
777                                         {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {
778                                                 ~ld.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value);~f4=q.value; ~undof4=~f4;}
779                                         {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {
780                                                 ~le.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value);~f5=q.value; ~undof5=~f5;}
781                                         {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {
782                                                 ~lf.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value);~f6=q.value; ~undof6=~f6;}
783                                         {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {
784                                                 ~lg.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value);~f7=q.value; ~undof7=~f7;}
785
786                                 }
787                                 {~la1.isRunning == true}{
788                                         case
789                                         {y<~tgrid} {nil}
790                                         {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {
791                                                 ~la1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value);~f1=q.value; ~undof1=~f1;}
792                                         {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {
793                                                 ~lb1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value);~f2=q.value; ~undof2=~f2;}
794                                         {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {
795                                                 ~lc1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value);~f3=q.value; ~undof3=~f3;}
796                                         {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {
797                                                 ~ld1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value);~f4=q.value; ~undof4=~f4;}
798                                         {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {
799                                                 ~le1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value);~f5=q.value; ~undof5=~f5;}
800                                         {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {
801                                                 ~lf1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value);~f6=q.value; ~undof6=~f6;}
802                                         {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {
803                                                 ~lg1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value);~f7=q.value; ~undof7=~f7;}
804                                         {y>~tgrid and: y<~bgrid} {nil}
805                                         {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {
806                                                 ~la1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value);~f1=q.value; ~undof1=~f1;}
807                                         {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {
808                                                 ~lb1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value);~f2=q.value; ~undof2=~f2;}
809                                         {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {
810                                                 ~lc1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value);~f3=q.value; ~undof3=~f3;}
811                                         {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {
812                                                 ~ld1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value);~f4=q.value; ~undof4=~f4;}
813                                         {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {
814                                                 ~le1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value);~f5=q.value; ~undof5=~f5;}
815                                         {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {
816                                                 ~lf1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value);~f6=q.value; ~undof6=~f6;}
817                                         {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {
818                                                 ~lg1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value);~f7=q.value; ~undof7=~f7;}
819                                 };
820                         };
821
822                         //draw lines with Pen and create Synths according to mouse movement
823                         view.mouseMoveAction = {
824                                 |v, x, y|
825
826                                 ~nh = 2;
827                                 ~nw = ~nh*1.6180339887499;
828
829                                 ~tgrid = 30;
830                                 ~bgrid = Window.screenBounds.height-(Window.screenBounds.height/1.6180339887499)+30;
831
832                                 case
833                                 {y<~tgrid} {nil}
834                                 {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)}  {~z1.close;~z25.close;~z1 = (CompositeView(w, Rect(x, y, ~nw, 2)).background = Color.white;)}
835                                 {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)}  {~z2.close;~z26.close;~z2 = (CompositeView(w, Rect(x, y, ~nw, 2)).background = Color.white;)}
836                                 {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)}  {~z3.close;~z27.close;~z3 = (CompositeView(w, Rect(x, y, ~nw, 2)).background = Color.white;)}
837                                 {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)}  {~z4.close;~z28.close;~z4 = (CompositeView(w, Rect(x, y, ~nw, 2)).background = Color.white;)}
838                                 {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)}  {~z5.close;~z29.close;~z5 = (CompositeView(w, Rect(x, y, ~nw, 2)).background = Color.white;)}
839                                 {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)}  {~z6.close;~z30.close;~z6 = (CompositeView(w, Rect(x, y, ~nw, 2)).background = Color.white;)}
840                                 {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {~z7.close;~z31.close;~z7 = (CompositeView(w, Rect(x, y, ~nw, 2)).background = Color.white;)}
841                                 {y>~tgrid and: y<~bgrid} {nil}
842                                 {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {~z1.close;~z25.close;~z1 = (CompositeView(w, Rect(x, y, ~nw, 2)).background = Color.white;)}
843                                 {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {~z2.close;~z26.close;~z2 = (CompositeView(w, Rect(x, y, ~nw, 2)).background = Color.white;)}
844                                 {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {~z3.close;~z27.close;~z3 = (CompositeView(w, Rect(x, y, ~nw, 2)).background = Color.white;)}
845                                 {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {~z4.close;~z28.close;~z4 = (CompositeView(w, Rect(x, y, ~nw, 2)).background = Color.white;)}
846                                 {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {~z5.close;~z29.close;~z5 = (CompositeView(w, Rect(x, y, ~nw, 2)).background = Color.white;)}
847                                 {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {~z6.close;~z30.close;~z6 = (CompositeView(w, Rect(x, y, ~nw, 2)).background = Color.white;)}
848                                 {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {~z7.close;~z31.close;~z7 = (CompositeView(w, Rect(x, y, ~nw, 2)).background = Color.white;)};
849                                 w.refresh;
850
851                                 ~tgrid = 30;
852                                 ~bgrid = Window.screenBounds.height-(Window.screenBounds.height/1.6180339887499)+30;
853
854                                 case
855                                 {~la.isRunning == true}{
856                                         case
857                                         {y<~tgrid} {nil}
858                                         {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {
859                                                 ~la.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value);~f1=q.value; ~undof1=~f1;}
860                                         {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {
861                                                 ~lb.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value);~f2=q.value; ~undof2=~f2;}
862                                         {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {
863                                                 ~lc.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value);~f3=q.value; ~undof3=~f3;}
864                                         {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {
865                                                 ~ld.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value);~f4=q.value; ~undof4=~f4;}
866                                         {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {
867                                                 ~le.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value);~f5=q.value; ~undof5=~f5;}
868                                         {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {
869                                                 ~lf.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value);~f6=q.value; ~undof6=~f6;}
870                                         {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {
871                                                 ~lg.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value);~f7=q.value; ~undof7=~f7;}
872                                         {y>~tgrid and: y<~bgrid} {nil}
873                                         {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {
874                                                 ~la.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value);~f1=q.value; ~undof1=~f1;}
875                                         {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {
876                                                 ~lb.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value);~f2=q.value; ~undof2=~f2;}
877                                         {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {
878                                                 ~lc.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value);~f3=q.value; ~undof3=~f3;}
879                                         {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {
880                                                 ~ld.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value);~f4=q.value; ~undof4=~f4;}
881                                         {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {
882                                                 ~le.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value);~f5=q.value; ~undof5=~f5;}
883                                         {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {
884                                                 ~lf.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value);~f6=q.value; ~undof6=~f6;}
885                                         {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {
886                                                 ~lg.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value);~f7=q.value; ~undof7=~f7;}
887
888                                 }
889                                 {~la1.isRunning == true}{
890                                         case
891                                         {y<~tgrid} {nil}
892                                         {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {
893                                                 ~la1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value);~f1=q.value; ~undof1=~f1;}
894                                         {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {
895                                                 ~lb1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value);~f2=q.value; ~undof2=~f2;}
896                                         {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {
897                                                 ~lc1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value);~f3=q.value; ~undof3=~f3;}
898                                         {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {
899                                                 ~ld1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value);~f4=q.value; ~undof4=~f4;}
900                                         {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {
901                                                 ~le1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value);~f5=q.value; ~undof5=~f5;}
902                                         {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {
903                                                 ~lf1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value);~f6=q.value; ~undof6=~f6;}
904                                         {y>=(~tgrid) and: y<=(~tgrid=~tgrid+10)} {
905                                                 ~lg1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin1,~outmax1)).value);~f7=q.value; ~undof7=~f7;}
906                                         {y>~tgrid and: y<~bgrid} {nil}
907                                         {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {
908                                                 ~la1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value);~f1=q.value; ~undof1=~f1;}
909                                         {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {
910                                                 ~lb1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value);~f2=q.value; ~undof2=~f2;}
911                                         {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {
912                                                 ~lc1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value);~f3=q.value; ~undof3=~f3;}
913                                         {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {
914                                                 ~ld1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value);~f4=q.value; ~undof4=~f4;}
915                                         {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {
916                                                 ~le1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value);~f5=q.value; ~undof5=~f5;}
917                                         {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {
918                                                 ~lf1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value);~f6=q.value; ~undof6=~f6;}
919                                         {y>=(~bgrid) and: y<=(~bgrid=~bgrid+10)} {
920                                                 ~lg1.set(\dur, q=((x/(Window.screenBounds.width)).linexp(0,1,~outmin2,~outmax2)).value);~f7=q.value; ~undof7=~f7;}
921                                 };
922                         };
923
924                         ~tgrid = 30;
925                         ~bgrid = Window.screenBounds.height-(Window.screenBounds.height/1.6180339887499)+30;
926                         ~dc1 = ~tgrid-5; ~dc2 = ~bgrid-5; ~dca = 10;
927
928                         ~bpl = Window.screenBounds.width-340;
929                         ~bpt = Window.screenBounds.height-88;
930                         ~bph = 40;
931                         ~bpw = 40/1.6180339887499;
932
933                         b = Button.new(w,Rect(Window.screenBounds.width*0+80,Window.screenBounds.height-52,60,60/1.6180339887499)).states_([["copy",Color.white,Color.black],["copy",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
934                                 if(button.value == 1, {
935
936                                         ~tsc = TextView(w, Rect(0,0, 1600*2, 354)).background_(Color.black);
937                                         (~tsc.string =
938                                                 "saved: "++"\n"++
939                                                 "1: "++"\n"++"[~f1="++fp1.asString++",~f2="++fp2.asString++",~f3="++fp3.asString++",~f4="++fp4.asString++",~f5="++fp5.asString++",~f6="++fp6.asString++",~f7="++fp7.asString++"]"++"\n"++
940                                                 "2: "++"\n"++"[~f1="++fp1b.asString++",~f2="++fp2b.asString++",~f3="++fp3b.asString++",~f4="++fp4b.asString++",~f5="++fp5b.asString++",~f6="++fp6b.asString++",~f7="++fp7b.asString++"]"++"\n"++
941                                                 "3: "++"\n"++"[~f1="++fp1c.asString++",~f2="++fp2c.asString++",~f3="++fp3c.asString++",~f4="++fp4c.asString++",~f5="++fp5c.asString++",~f6="++fp6c.asString++",~f7="++fp7c.asString++"]"++"\n"++
942                                                 "4: "++"\n"++"[~f1="++fp1d.asString++",~f2="++fp2d.asString++",~f3="++fp3d.asString++",~f4="++fp4d.asString++",~f5="++fp5d.asString++",~f6="++fp6d.asString++",~f7="++fp7d.asString++"]"++"\n"++
943                                                 "5: "++"\n"++"[~f1="++fp1e.asString++",~f2="++fp2e.asString++",~f3="++fp3e.asString++",~f4="++fp4e.asString++",~f5="++fp5e.asString++",~f6="++fp6e.asString++",~f7="++fp7e.asString++"]"++"\n"++
944                                                 "6: "++"\n"++"[~f1="++fp1f.asString++",~f2="++fp2f.asString++",~f3="++fp3f.asString++",~f4="++fp4f.asString++",~f5="++fp5f.asString++",~f6="++fp6f.asString++",~f7="++fp7f.asString++"]"++"\n"++
945                                                 "7: "++"\n"++"[~f1="++fp1g.asString++",~f2="++fp2g.asString++",~f3="++fp3g.asString++",~f4="++fp4g.asString++",~f5="++fp5g.asString++",~f6="++fp6g.asString++",~f7="++fp7g.asString++"]"++"\n"++
946                                                 "8: "++"\n"++"[~f1="++fp1h.asString++",~f2="++fp2h.asString++",~f3="++fp3h.asString++",~f4="++fp4h.asString++",~f5="++fp5h.asString++",~f6="++fp6h.asString++",~f7="++fp7h.asString++"]"++"\n"++"\n"++
947
948                                                 "current: "++"\n"++
949                                                 "[~f1="++~f1.asString++",~f2="++~f2.asString++",~f3="++~f3.asString++",~f4="++~f4.asString++",~f5="++~f5.asString++",~f6="++~f6.asString++",~f7="++~f7.asString++"]"
950
951                                         );
952                                         ~tsc.stringColor = Color.white;
953                                         (str= [ ~f1,~f2,~f3,~f4,~f5,~f6,~f7/*,~f8,~f9,~f10,~f11,~f12*/ ];("echo"+str+"| xclip -selection clipboard").unixCmd;);
954                                         [ ~f1,~f2,~f3,~f4,~f5,~f6,~f7/*,~f8,~f9,~f10,~f11,~f12*/ ].postln;},
955                                         {~tsc.close;});
956                         });
957                         sts = Button.new(w,Rect(Window.screenBounds.width-20-20-20-20,~bpt+69+5,20,20/1.6180339887499)).states_([["st",Color.white,Color.black],["st",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
958                                 if(~timer.isPlaying == true, {
959                                         if(~tst.value == nil, {~timer.stop; ~systemclock.stop; ~systemclock.clear;},{~tst.close;
960                                                 ~timevals.value;
961                                                 ~timer.stop; ~systemclock.stop; ~systemclock.clear;});
962                                 });
963                         });
964                         ~ts = Button.new(w,Rect(Window.screenBounds.width*0+20,Window.screenBounds.height-52,60,60/1.6180339887499)).states_([["tsynth0",Color.white,Color.black],["tsynth1",Color.white,Color.black]]).action_({arg synthbutton; synthbutton.value.postln}).action_({arg synthbutton; if(synthbutton.value == 1, {
965                                 if(~tst != nil, {~tst.close});
966                                 ~timevals.value;
967                                 ~timer.stop; ~systemclock.stop; ~systemclock.clear;},{if(~tst.value == nil, {~timer.stop; ~systemclock.stop; ~systemclock.clear;},{~timer.stop; ~systemclock.stop; ~systemclock.clear; ~tst.close;})})});
968                         b3 = Button.new(w,Rect(Window.screenBounds.width*0+20,Window.screenBounds.height-88,60,60/1.6180339887499)).states_([["synth0",Color.white,Color.black],["synth1",Color.white,Color.black]]).action_({arg synthbutton; synthbutton.value.postln}).action_({
969                                 arg synthbutton; if(synthbutton.value == 1, {
970                                         ~la = Synth(\gsineicls, [\dur, 432],~icl6).register;~la1 = Synth(\gsineicls, [\dur, 432],~icl6).register;[~la, ~la1].do(_.free);~la = Synth(\gsineicls, [\dur, 432],~icl6).register;~la1 = Synth(\gsineicls, [\dur, 432],~icl6).register;[~la, ~la1].do(_.free);
971                                         ~synthopen.value;
972                                         ~numsynths.stop; ~numsynthsfunc.value;
973                                         ~midifunc.value;
974                                         },
975                                         {~synthfree.value; b4.value = 0;})
976                         });
977                         b4 = Button.new(w,Rect(Window.screenBounds.width*0+80,Window.screenBounds.height-88,60,60/1.6180339887499)).states_([["pause0",Color.white,Color.black],["pause1",Color.white,Color.black]]).action_({arg synthbutton; synthbutton.value.postln}).action_({
978                                 arg synthbutton; if(synthbutton.value == 1, {~synthpause.value; ~timer.stop;},
979                                         {~synthflow.value; if(~time == 0, {~timer.stop;}, {~timer = Routine({inf.do({~time = ~time+0.01; ~time.postln; 0.01.wait;});}); SystemClock.play(~timer);})})
980                         });
981
982
983
984                         ~bph = 26;
985                         ~bpw = 26/1.6180339887499;
986                         ~bpl = Window.screenBounds.width-(~bph*8)-20;
987                         ~bpt = Window.screenBounds.height-88;
988
989                         ~bp01l = ~bpl;
990                         ~bp02l = ~bpl+~bph;
991                         ~bp03l = ~bpl+~bph+~bph;
992                         ~bp04l = ~bpl+~bph+~bph+~bph;
993                         ~bp05l = ~bpl+~bph+~bph+~bph+~bph;
994                         ~bp06l = ~bpl+~bph+~bph+~bph+~bph+~bph;
995                         ~bp07l = ~bpl+~bph+~bph+~bph+~bph+~bph+~bph;
996                         ~bp08l = ~bpl+~bph+~bph+~bph+~bph+~bph+~bph+~bph;
997                         ~bpf1l = ~bpl;
998                         ~bpf2l = ~bpl+~bph;
999                         ~bpf3l = ~bpl+~bph+~bph;
1000                         ~bpf4l = ~bpl+~bph+~bph+~bph;
1001                         ~bpf5l = ~bpl+~bph+~bph+~bph+~bph;
1002                         ~bpf6l = ~bpl+~bph+~bph+~bph+~bph+~bph;
1003                         ~bpf7l = ~bpl+~bph+~bph+~bph+~bph+~bph+~bph;
1004                         ~bpf8l = ~bpl+~bph+~bph+~bph+~bph+~bph+~bph+~bph;
1005                         /*~bp01l = ~bpl;
1006                         ~bp02l = ~bpl;
1007                         ~bp03l = ~bpl+~bph;
1008                         ~bp04l = ~bpl+~bph;
1009                         ~bp05l = ~bpl+~bph+~bph;
1010                         ~bp06l = ~bpl+~bph+~bph;
1011                         ~bp07l = ~bpl+~bph+~bph+~bph;
1012                         ~bp08l = ~bpl+~bph+~bph+~bph;
1013                         ~bpf1l = ~bpl+~bph+~bph+~bph+~bph;
1014                         ~bpf2l = ~bpl+~bph+~bph+~bph+~bph;
1015                         ~bpf3l = ~bpl+~bph+~bph+~bph+~bph+~bph;
1016                         ~bpf4l = ~bpl+~bph+~bph+~bph+~bph+~bph;
1017                         ~bpf5l = ~bpl+~bph+~bph+~bph+~bph+~bph+~bph;
1018                         ~bpf6l = ~bpl+~bph+~bph+~bph+~bph+~bph+~bph;
1019                         ~bpf7l = ~bpl+~bph+~bph+~bph+~bph+~bph+~bph+~bph;
1020                         ~bpf8l = ~bpl+~bph+~bph+~bph+~bph+~bph+~bph+~bph;*/
1021
1022                         ~bp01t = ~bpt;
1023                         ~bp02t = ~bpt;
1024                         ~bp03t = ~bpt;
1025                         ~bp04t = ~bpt;
1026                         ~bp05t = ~bpt;
1027                         ~bp06t = ~bpt;
1028                         ~bp07t = ~bpt;
1029                         ~bp08t = ~bpt;
1030                         ~bpf1t = ~bpt+~bpw;
1031                         ~bpf2t = ~bpt+~bpw;
1032                         ~bpf3t = ~bpt+~bpw;
1033                         ~bpf4t = ~bpt+~bpw;
1034                         ~bpf5t = ~bpt+~bpw;
1035                         ~bpf6t = ~bpt+~bpw;
1036                         ~bpf7t = ~bpt+~bpw;
1037                         ~bpf8t = ~bpt+~bpw;
1038                         /*~bp01t = ~bpt;
1039                         ~bp02t = ~bpt+~bpw;
1040                         ~bp03t = ~bpt;
1041                         ~bp04t = ~bpt+~bpw;
1042                         ~bp05t = ~bpt;
1043                         ~bp06t = ~bpt+~bpw;
1044                         ~bp07t = ~bpt;
1045                         ~bp08t = ~bpt+~bpw;
1046                         ~bpf1t = ~bpt;
1047                         ~bpf2t = ~bpt+~bpw;
1048                         ~bpf3t = ~bpt;
1049                         ~bpf4t = ~bpt+~bpw;
1050                         ~bpf5t = ~bpt;
1051                         ~bpf6t = ~bpt+~bpw;
1052                         ~bpf7t = ~bpt;
1053                         ~bpf8t = ~bpt+~bpw;*/
1054
1055                         ~bp01h = ~bph;
1056                         ~bp02h = ~bph;
1057                         ~bp03h = ~bph;
1058                         ~bp04h = ~bph;
1059                         ~bp05h = ~bph;
1060                         ~bp06h = ~bph;
1061                         ~bp07h = ~bph;
1062                         ~bp08h = ~bph;
1063                         ~bpf1h = ~bph;
1064                         ~bpf2h = ~bph;
1065                         ~bpf3h = ~bph;
1066                         ~bpf4h = ~bph;
1067                         ~bpf5h = ~bph;
1068                         ~bpf6h = ~bph;
1069                         ~bpf7h = ~bph;
1070                         ~bpf8h = ~bph;
1071
1072                         ~bp01w = ~bpw;
1073                         ~bp02w = ~bpw;
1074                         ~bp03w = ~bpw;
1075                         ~bp04w = ~bpw;
1076                         ~bp05w = ~bpw;
1077                         ~bp06w = ~bpw;
1078                         ~bp07w = ~bpw;
1079                         ~bp08w = ~bpw;
1080                         ~bpf1w = ~bpw;
1081                         ~bpf2w = ~bpw;
1082                         ~bpf3w = ~bpw;
1083                         ~bpf4w = ~bpw;
1084                         ~bpf5w = ~bpw;
1085                         ~bpf6w = ~bpw;
1086                         ~bpf7w = ~bpw;
1087                         ~bpf8w = ~bpw;
1088
1089                         ~tspw=280+210;
1090                         ~tsph=280+210/~gm;
1091                         ~tspl=Window.screenBounds.width-~tspw;
1092                         ~tspt=~bpt-310;
1093
1094                         ~bplaceo1 = Button.new(w,Rect(~bp01l,~bp01t,~bp01h,~bp01w)).states_([["o1",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
1095
1096                                 if(~ts.value == 1,
1097                                         {if(~tst == nil, {nil}, {~tst.close;});
1098                                                 ~timevals.value;
1099                                                 ~timer.stop; ~systemclock.stop; ~systemclock.clear; ~time1o = 0;
1100                                                 ~timer = Routine({inf.do({
1101                                                         ~time1o =
1102                                                         ~time1o+0.01; ~slot = "o1_"+~time1o.asString; 0.01.wait;});}); ~systemclock = SystemClock.play(~timer);},
1103                                         {nil});
1104
1105                                 [~f1=fp1,~f2=fp2,~f3=fp3,~f4=fp4,~f5=fp5,~f6=fp6,~f7=fp7];
1106
1107                                 ~synthopen.value;
1108                                 ~currentsynth = "o1"; ~synthmonitorfunc.value;
1109                         });
1110
1111                         ~bplaceo2 = Button.new(w,Rect(~bp02l,~bp02t,~bp02h,~bp02w)).states_([["o2",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
1112
1113                                 if(~ts.value == 1,
1114                                         {if(~tst == nil, {nil}, {~tst.close;});
1115                                                 ~timevals.value;
1116                                                 ~timer.stop; ~systemclock.stop; ~systemclock.clear; ~time2o = 0;
1117                                                 ~timer = Routine({inf.do({
1118                                                         ~time2o =
1119                                                         ~time2o+0.01; ~slot = "o2_"+~time2o.asString; 0.01.wait;});}); ~systemclock = SystemClock.play(~timer);},
1120                                         {nil});
1121
1122                                 [~f1=fp1b,~f2=fp2b,~f3=fp3b,~f4=fp4b,~f5=fp5b,~f6=fp6b,~f7=fp7b];
1123
1124                                 ~synthopen.value;
1125                                 ~currentsynth = "o2"; ~synthmonitorfunc.value;
1126                         });
1127                         ~bplaceo3 = Button.new(w,Rect(~bp03l,~bp03t,~bp03h,~bp03w)).states_([["o3",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
1128
1129                                 if(~ts.value == 1,
1130                                         {if(~tst == nil, {nil}, {~tst.close;});
1131                                                 ~timevals.value;
1132                                                 ~timer.stop; ~systemclock.stop; ~systemclock.clear; ~time3o = 0;
1133                                                 ~timer = Routine({inf.do({
1134                                                         ~time3o =
1135                                                         ~time3o+0.01; ~slot = "o3_"+~time3o.asString; 0.01.wait;});}); ~systemclock = SystemClock.play(~timer);},
1136                                         {nil});
1137
1138                                 [~f1=fp1c,~f2=fp2c,~f3=fp3c,~f4=fp4c,~f5=fp5c,~f6=fp6c,~f7=fp7c];
1139
1140                                 ~synthopen.value;
1141                                 ~currentsynth = "o3"; ~synthmonitorfunc.value;
1142                         });
1143                         ~bplaceo4 = Button.new(w,Rect(~bp04l,~bp04t,~bp04h,~bp04w)).states_([["o4",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
1144
1145                                 if(~ts.value == 1,
1146                                         {if(~tst == nil, {nil}, {~tst.close;});
1147                                                 ~timevals.value;
1148                                                 ~timer.stop; ~systemclock.stop; ~systemclock.clear; ~time4o = 0;
1149                                                 ~timer = Routine({inf.do({
1150                                                         ~time4o =
1151                                                         ~time4o+0.01; ~slot = "o4_"+~time4o.asString; 0.01.wait;});}); ~systemclock = SystemClock.play(~timer);},
1152                                         {nil});
1153
1154                                 [~f1=fp1d,~f2=fp2d,~f3=fp3d,~f4=fp4d,~f5=fp5d,~f6=fp6d,~f7=fp7d];
1155
1156                                 ~synthopen.value;
1157                                 ~currentsynth = "o4"; ~synthmonitorfunc.value;
1158                         });
1159
1160                         ~bplaceo5 = Button.new(w,Rect(~bp05l,~bp05t,~bp05h,~bp05w)).states_([["o5",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
1161
1162                                 if(~ts.value == 1,
1163                                         {if(~tst == nil, {nil}, {~tst.close;});
1164                                                 ~timevals.value;
1165                                                 ~timer.stop; ~systemclock.stop; ~systemclock.clear; ~time5o = 0;
1166                                                 ~timer = Routine({inf.do({
1167                                                         ~time5o =
1168                                                         ~time5o+0.01; ~slot = "o5_"+~time5o.asString; 0.01.wait;});}); ~systemclock = SystemClock.play(~timer);},
1169                                         {nil});
1170
1171                                 [~f1=fp1e,~f2=fp2e,~f3=fp3e,~f4=fp4e,~f5=fp5e,~f6=fp6e,~f7=fp7e];
1172
1173                                 ~synthopen.value;
1174                                 ~currentsynth = "o5"; ~synthmonitorfunc.value;
1175                         });
1176                         ~bplaceo6 = Button.new(w,Rect(~bp06l,~bp06t,~bp06h,~bp06w)).states_([["o6",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
1177
1178                                 if(~ts.value == 1,
1179                                         {if(~tst == nil, {nil}, {~tst.close;});
1180                                                 ~timevals.value;
1181                                                 ~timer.stop; ~systemclock.stop; ~systemclock.clear; ~time6o = 0;
1182                                                 ~timer = Routine({inf.do({
1183                                                         ~time6o =
1184                                                         ~time6o+0.01; ~slot = "o6_"+~time6o.asString; 0.01.wait;});}); ~systemclock = SystemClock.play(~timer);},
1185                                         {nil});
1186
1187                                 [~f1=fp1f,~f2=fp2f,~f3=fp3f,~f4=fp4f,~f5=fp5f,~f6=fp6f,~f7=fp7f];
1188
1189                                 ~synthopen.value;
1190                                 ~currentsynth = "o6"; ~synthmonitorfunc.value;
1191                         });
1192                         ~bplaceo7 = Button.new(w,Rect(~bp07l,~bp07t,~bp07h,~bp07w)).states_([["o7",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
1193
1194                                 if(~ts.value == 1,
1195                                         {if(~tst == nil, {nil}, {~tst.close;});
1196                                                 ~timevals.value;
1197                                                 ~timer.stop; ~systemclock.stop; ~systemclock.clear; ~time7o = 0;
1198                                                 ~timer = Routine({inf.do({
1199                                                         ~time7o =
1200                                                         ~time7o+0.01; ~slot = "o7_"+~time7o.asString; 0.01.wait;});}); ~systemclock = SystemClock.play(~timer);},
1201                                         {nil});
1202
1203                                 [~f1=fp1g,~f2=fp2g,~f3=fp3g,~f4=fp4g,~f5=fp5g,~f6=fp6g,~f7=fp7g];
1204
1205                                 ~synthopen.value;
1206                                 ~currentsynth = "o7"; ~synthmonitorfunc.value;
1207                         });
1208                         ~bplaceo8 = Button.new(w,Rect(~bp08l,~bp08t,~bp08h,~bp08w)).states_([["o8",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
1209
1210                                 if(~ts.value == 1,
1211                                         {if(~tst == nil, {nil}, {~tst.close;});
1212                                                 ~timevals.value;
1213                                                 ~timer.stop; ~systemclock.stop; ~systemclock.clear; ~time8o = 0;
1214                                                 ~timer = Routine({inf.do({
1215                                                         ~time8o =
1216                                                         ~time8o+0.01; ~slot = "o8_"+~time8o.asString; 0.01.wait;});}); ~systemclock = SystemClock.play(~timer);},
1217                                         {nil});
1218
1219                                 [~f1=fp1h,~f2=fp2h,~f3=fp3h,~f4=fp4h,~f5=fp5h,~f6=fp6h,~f7=fp7h];
1220
1221                                 ~synthopen.value;
1222                                 ~currentsynth = "o8"; ~synthmonitorfunc.value;
1223                         });
1224                         ~bplacef1 = Button.new(w,Rect(~bpf1l,~bpf1t,~bpf1h,~bpf1w)).states_([["f1",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
1225
1226                                 if(~ts.value == 1,
1227                                         {if(~tst == nil, {nil}, {~tst.close;});
1228                                                 ~timevals.value;
1229                                                 ~timer.stop; ~systemclock.stop; ~systemclock.clear; ~time1f = 0;
1230                                                 ~timer = Routine({inf.do({
1231                                                         ~time1f =
1232                                                         ~time1f+0.01; ~slot = "f1_"+~time1f.asString; 0.01.wait;});}); ~systemclock = SystemClock.play(~timer);},
1233                                         {nil});
1234
1235                                 [~f1=fp1,~f2=fp2,~f3=fp3,~f4=fp4,~f5=fp5,~f6=fp6,~f7=fp7];
1236
1237                                 ~synthflow.value;
1238                                 ~currentsynth = "f1"; ~synthmonitorfunc.value;
1239                         });
1240                         ~bplacef2 = Button.new(w,Rect(~bpf2l,~bpf2t,~bpf2h,~bpf2w)).states_([["f2",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
1241
1242                                 if(~ts.value == 1,
1243                                         {if(~tst == nil, {nil}, {~tst.close;});
1244                                                 ~timevals.value;
1245                                                 ~timer.stop; ~systemclock.stop; ~systemclock.clear; ~time2f = 0;
1246                                                 ~timer = Routine({inf.do({
1247                                                         ~time2f =
1248                                                         ~time2f+0.01; ~slot = "f2_"+~time2f.asString; 0.01.wait;});}); ~systemclock = SystemClock.play(~timer);},
1249                                         {nil});
1250
1251                                 [~f1=fp1b,~f2=fp2b,~f3=fp3b,~f4=fp4b,~f5=fp5b,~f6=fp6b,~f7=fp7b];
1252
1253                                 ~synthflow.value;
1254                                 ~currentsynth = "f2"; ~synthmonitorfunc.value;
1255                         });
1256
1257                         ~bplacef3 = Button.new(w,Rect(~bpf3l,~bpf3t,~bpf3h,~bpf3w)).states_([["f3",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
1258
1259                                 if(~ts.value == 1,
1260                                         {if(~tst == nil, {nil}, {~tst.close;});
1261                                                 ~timevals.value;
1262                                                 ~timer.stop; ~systemclock.stop; ~systemclock.clear; ~time3f = 0;
1263                                                 ~timer = Routine({inf.do({
1264                                                         ~time3f =
1265                                                         ~time3f+0.01; ~slot = "f3_"+~time3f.asString; 0.01.wait;});}); ~systemclock = SystemClock.play(~timer);},
1266                                         {nil});
1267
1268                                 [~f1=fp1c,~f2=fp2c,~f3=fp3c,~f4=fp4c,~f5=fp5c,~f6=fp6c,~f7=fp7c];
1269
1270                                 ~synthflow.value;
1271                                 ~currentsynth = "f3"; ~synthmonitorfunc.value;
1272                         });
1273                         ~bplacef4 = Button.new(w,Rect(~bpf4l,~bpf4t,~bpf4h,~bpf4w)).states_([["f4",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
1274
1275                                 if(~ts.value == 1,
1276                                         {if(~tst == nil, {nil}, {~tst.close;});
1277                                                 ~timevals.value;
1278                                                 ~timer.stop; ~systemclock.stop; ~systemclock.clear; ~time4f = 0;
1279                                                 ~timer = Routine({inf.do({
1280                                                         ~time4f =
1281                                                         ~time4f+0.01; ~slot = "f4_"+~time4f.asString; 0.01.wait;});}); ~systemclock = SystemClock.play(~timer);},
1282                                         {nil});
1283
1284                                 [~f1=fp1d,~f2=fp2d,~f3=fp3d,~f4=fp4d,~f5=fp5d,~f6=fp6d,~f7=fp7d];
1285
1286                                 ~synthflow.value;
1287                                 ~currentsynth = "f4"; ~synthmonitorfunc.value;
1288                         });
1289
1290                         ~bplacef5 = Button.new(w,Rect(~bpf5l,~bpf5t,~bpf5h,~bpf5w)).states_([["f5",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
1291
1292                                 if(~ts.value == 1,
1293                                         {if(~tst == nil, {nil}, {~tst.close;});
1294                                                 ~timevals.value;
1295                                                 ~timer.stop; ~systemclock.stop; ~systemclock.clear; ~time5f = 0;
1296                                                 ~timer = Routine({inf.do({
1297                                                         ~time5f =
1298                                                         ~time5f+0.01; ~slot = "f5_"+~time5f.asString; 0.01.wait;});}); ~systemclock = SystemClock.play(~timer);},
1299                                         {nil});
1300
1301                                 [~f1=fp1e,~f2=fp2e,~f3=fp3e,~f4=fp4e,~f5=fp5e,~f6=fp6e,~f7=fp7e];
1302
1303                                 ~synthflow.value;
1304                                 ~currentsynth = "f5"; ~synthmonitorfunc.value;
1305                         });
1306
1307                         ~bplacef6 = Button.new(w,Rect(~bpf6l,~bpf6t,~bpf6h,~bpf6w)).states_([["f6",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
1308
1309                                 if(~ts.value == 1,
1310                                         {if(~tst == nil, {nil}, {~tst.close;});
1311                                                 ~timevals.value;
1312                                                 ~timer.stop; ~systemclock.stop; ~systemclock.clear; ~time6f = 0;
1313                                                 ~timer = Routine({inf.do({
1314                                                         ~time6f =
1315                                                         ~time6f+0.01; ~slot = "f6_"+~time6f.asString; 0.01.wait;});}); ~systemclock = SystemClock.play(~timer);},
1316                                         {nil});
1317
1318                                 [~f1=fp1f,~f2=fp2f,~f3=fp3f,~f4=fp4f,~f5=fp5f,~f6=fp6f,~f7=fp7f];
1319
1320                                 ~synthflow.value;
1321                                 ~currentsynth = "f6"; ~synthmonitorfunc.value;
1322                         });
1323
1324
1325                         ~bplacef7 = Button.new(w,Rect(~bpf7l,~bpf7t,~bpf7h,~bpf7w)).states_([["f7",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
1326
1327                                 if(~ts.value == 1,
1328                                         {if(~tst == nil, {nil}, {~tst.close;});
1329                                                 ~timevals.value;
1330                                                 ~timer.stop; ~systemclock.stop; ~systemclock.clear; ~time7f = 0;
1331                                                 ~timer = Routine({inf.do({
1332                                                         ~time7f =
1333                                                         ~time7f+0.01; ~slot = "f7_"+~time7f.asString; 0.01.wait;});}); ~systemclock = SystemClock.play(~timer);},
1334                                         {nil});
1335
1336                                 [~f1=fp1g,~f2=fp2g,~f3=fp3g,~f4=fp4g,~f5=fp5g,~f6=fp6g,~f7=fp7g];
1337
1338                                 ~synthflow.value;
1339                                 ~currentsynth = "f7"; ~synthmonitorfunc.value;
1340                         });
1341                         ~bplacef8 = Button.new(w,Rect(~bpf8l,~bpf8t,~bpf8h,~bpf8w)).states_([["f8",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
1342
1343                                 if(~ts.value == 1,
1344                                         {if(~tst == nil, {nil}, {~tst.close;});
1345                                                 ~timevals.value;
1346                                                 ~timer.stop; ~systemclock.stop; ~systemclock.clear; ~time8f = 0;
1347                                                 ~timer = Routine({inf.do({
1348                                                         ~time8f =
1349                                                         ~time8f+0.01; ~slot = "f8_"+~time8f.asString; 0.01.wait;});}); ~systemclock = SystemClock.play(~timer);},
1350                                         {nil});
1351
1352                                 [~f1=fp1h,~f2=fp2h,~f3=fp3h,~f4=fp4h,~f5=fp5h,~f6=fp6h,~f7=fp7h];
1353
1354                                 ~synthflow.value;
1355                                 ~currentsynth = "f8"; ~synthmonitorfunc.value;
1356                         });
1357                         ~bplaces1 = Button.new(w,Rect(~bpf1l,~bpf1t+~bpf1w,~bpf1h,~bpf1w)).states_([["s1",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
1358
1359                                 if(~ts.value == 1,
1360                                         {if(~tst == nil, {nil}, {~tst.close;});
1361                                                 ~timevals.value;
1362                                                 ~timer.stop; ~systemclock.stop; ~systemclock.clear; ~time1s = 0;
1363                                                 ~timer = Routine({inf.do({
1364                                                         ~time1s =
1365                                                         ~time1s+0.01; ~slot = "s1_"+~time1s.asString; 0.01.wait;});}); ~systemclock = SystemClock.play(~timer);},
1366                                         {nil});
1367
1368                                 if(~slidetime1 == nil, {~slidetime1 = 4}); if(~slidedo1 == nil, {~slidedo1 = 2000;}); ~slidecount = ~slidedo1;
1369                                 #g,h,i,j,k,l,m,n,o,p,q,r = (([ ~f1,~f2,~f3,~f4,~f5,~f6,~f7 ]-
1370                                         [ fp1,fp2,fp3,fp4,fp5,fp6,fp7 ])*(-1)/~slidedo1);
1371
1372                                 ~slidetime =~slidetime1; ~slidedo = ~slidedo1;
1373
1374                                 ~slideroutine.stop;
1375
1376                                 ~synthslide.value;
1377                                 ~currentsynth = "s1"; ~synthmonitorfunc.value;
1378
1379                         });
1380                         ~bplaces2 = Button.new(w,Rect(~bpf2l,~bpf2t+~bpf2w,~bpf2h,~bpf2w)).states_([["s2",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
1381
1382                                 if(~ts.value == 1,
1383                                         {if(~tst == nil, {nil}, {~tst.close;});
1384                                                 ~timevals.value;
1385                                                 ~timer.stop; ~systemclock.stop; ~systemclock.clear; ~time2s = 0;
1386                                                 ~timer = Routine({inf.do({
1387                                                         ~time2s =
1388                                                         ~time2s+0.01; ~slot = "s2_"+~time2s.asString; 0.01.wait;});}); ~systemclock = SystemClock.play(~timer);},
1389                                         {nil});
1390
1391
1392                                 if(~slidetime2 == nil, {~slidetime2 = 4}); if(~slidedo2 == nil, {~slidedo2 = 2000;}); ~slidecount = ~slidedo2;
1393                                 #g,h,i,j,k,l,m,n,o,p,q,r = (([ ~f1,~f2,~f3,~f4,~f5,~f6,~f7 ]-
1394                                         [ fp1b,fp2b,fp3b,fp4b,fp5b,fp6b,fp7b ])*(-1)/~slidedo2);
1395
1396                                 ~slidetime = ~slidetime2; ~slidedo = ~slidedo2;
1397
1398                                 ~slideroutine.stop;
1399
1400                                 ~synthslide.value;
1401                                 ~currentsynth = "s2"; ~synthmonitorfunc.value;
1402
1403                         });
1404                         ~bplaces3 = Button.new(w,Rect(~bpf3l,~bpf3t+~bpf3w,~bpf3h,~bpf3w)).states_([["s3",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
1405
1406                                 if(~ts.value == 1,
1407                                         {if(~tst == nil, {nil}, {~tst.close;});
1408                                                 ~timevals.value;
1409                                                 ~timer.stop; ~systemclock.stop; ~systemclock.clear; ~time3s = 0;
1410                                                 ~timer = Routine({inf.do({
1411                                                         ~time3s =
1412                                                         ~time3s+0.01; ~slot = "s3_"+~time3s.asString; 0.01.wait;});}); ~systemclock = SystemClock.play(~timer);},
1413                                         {nil});
1414
1415
1416                                 if(~slidetime3 == nil, {~slidetime3 = 4}); if(~slidedo3 == nil, {~slidedo3 = 2000;}); ~slidecount = ~slidedo3;
1417                                 #g,h,i,j,k,l,m,n,o,p,q,r = (([ ~f1,~f2,~f3,~f4,~f5,~f6,~f7 ]-
1418                                         [ fp1c,fp2c,fp3c,fp4c,fp5c,fp6c,fp7c ])*(-1)/~slidedo3);
1419
1420                                 ~slidetime = ~slidetime3; ~slidedo = ~slidedo3;
1421
1422                                 ~slideroutine.stop;
1423
1424                                 ~synthslide.value;
1425                                 ~currentsynth = "s3"; ~synthmonitorfunc.value;
1426
1427                         });
1428                         ~bplaces4 = Button.new(w,Rect(~bpf4l,~bpf4t+~bpf4w,~bpf4h,~bpf4w)).states_([["s4",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
1429
1430                                 if(~ts.value == 1,
1431                                         {if(~tst == nil, {nil}, {~tst.close;});
1432                                                 ~timevals.value;
1433                                                 ~timer.stop; ~systemclock.stop; ~systemclock.clear; ~time4s = 0;
1434                                                 ~timer = Routine({inf.do({
1435                                                         ~time4s =
1436                                                         ~time4s+0.01; ~slot = "s4_"+~time4s.asString; 0.01.wait;});}); ~systemclock = SystemClock.play(~timer);},
1437                                         {nil});
1438
1439
1440                                 if(~slidetime4 == nil, {~slidetime4 = 4}); if(~slidedo4 == nil, {~slidedo4 = 2000;}); ~slidecount = ~slidedo4;
1441                                 #g,h,i,j,k,l,m,n,o,p,q,r = (([ ~f1,~f2,~f3,~f4,~f5,~f6,~f7 ]-
1442                                         [ fp1d,fp2d,fp3d,fp4d,fp5d,fp6d,fp7d ])*(-1)/~slidedo4);
1443
1444                                 ~slidetime = ~slidetime4; ~slidedo = ~slidedo4;
1445
1446                                 ~slideroutine.stop;
1447
1448                                 ~synthslide.value;
1449                                 ~currentsynth = "s4"; ~synthmonitorfunc.value;
1450
1451                         });
1452                         ~bplaces5 = Button.new(w,Rect(~bpf5l,~bpf5t+~bpf5w,~bpf5h,~bpf5w)).states_([["s5",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
1453
1454                                 if(~ts.value == 1,
1455                                         {if(~tst == nil, {nil}, {~tst.close;});
1456                                                 ~timevals.value;
1457                                                 ~timer.stop; ~systemclock.stop; ~systemclock.clear; ~time5s = 0;
1458                                                 ~timer = Routine({inf.do({
1459                                                         ~time5s =
1460                                                         ~time5s+0.01; ~slot = "s5_"+~time5s.asString; 0.01.wait;});}); ~systemclock = SystemClock.play(~timer);},
1461                                         {nil});
1462
1463
1464                                 if(~slidetime5 == nil, {~slidetime5 = 4}); if(~slidedo5 == nil, {~slidedo5 = 2000;}); ~slidecount = ~slidedo5;
1465                                 #g,h,i,j,k,l,m,n,o,p,q,r = (([ ~f1,~f2,~f3,~f4,~f5,~f6,~f7 ]-
1466                                         [ fp1e,fp2e,fp3e,fp4e,fp5e,fp6e,fp7e ])*(-1)/~slidedo5);
1467
1468                                 ~slidetime = ~slidetime5; ~slidedo = ~slidedo5;
1469
1470                                 ~slideroutine.stop;
1471
1472                                 ~synthslide.value;
1473                                 ~currentsynth = "s5"; ~synthmonitorfunc.value;
1474
1475                         });
1476                         ~bplaces6 = Button.new(w,Rect(~bpf6l,~bpf6t+~bpf6w,~bpf6h,~bpf6w)).states_([["s6",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
1477
1478                                 if(~ts.value == 1,
1479                                         {if(~tst == nil, {nil}, {~tst.close;});
1480                                                 ~timevals.value;
1481                                                 ~timer.stop; ~systemclock.stop; ~systemclock.clear; ~time6s = 0;
1482                                                 ~timer = Routine({inf.do({
1483                                                         ~time6s =
1484                                                         ~time6s+0.01; ~slot = "s6_"+~time6s.asString; 0.01.wait;});}); ~systemclock = SystemClock.play(~timer);},
1485                                         {nil});
1486
1487
1488                                 if(~slidetime6 == nil, {~slidetime6 = 4}); if(~slidedo6 == nil, {~slidedo6 = 2000;}); ~slidecount = ~slidedo6;
1489                                 #g,h,i,j,k,l,m,n,o,p,q,r = (([ ~f1,~f2,~f3,~f4,~f5,~f6,~f7 ]-
1490                                         [ fp1f,fp2f,fp3f,fp4f,fp5f,fp6f,fp7f ])*(-1)/~slidedo6);
1491
1492                                 ~slidetime = ~slidetime6; ~slidedo = ~slidedo6;
1493                                 ~slideroutine.stop;
1494
1495                                 ~synthslide.value;
1496                                 ~currentsynth = "s6"; ~synthmonitorfunc.value;
1497
1498                         });
1499                         ~bplaces7 = Button.new(w,Rect(~bpf7l,~bpf7t+~bpf7w,~bpf7h,~bpf7w)).states_([["s7",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
1500
1501                                 if(~ts.value == 1,
1502                                         {if(~tst == nil, {nil}, {~tst.close;});
1503                                                 ~timevals.value;
1504                                                 ~timer.stop; ~systemclock.stop; ~systemclock.clear; ~time7s = 0;
1505                                                 ~timer = Routine({inf.do({
1506                                                         ~time7s =
1507                                                         ~time7s+0.01; ~slot = "s7_"+~time7s.asString; 0.01.wait;});}); ~systemclock = SystemClock.play(~timer);},
1508                                         {nil});
1509
1510
1511                                 if(~slidetime7 == nil, {~slidetime7 = 4}); if(~slidedo7 == nil, {~slidedo7 = 2000;}); ~slidecount = ~slidedo7;
1512                                 #g,h,i,j,k,l,m,n,o,p,q,r = (([ ~f1,~f2,~f3,~f4,~f5,~f6,~f7 ]-
1513                                         [ fp1g,fp2g,fp3g,fp4g,fp5g,fp6g,fp7g ])*(-1)/~slidedo7);
1514
1515                                 ~slidetime = ~slidetime7; ~slidedo = ~slidedo7;
1516                                 ~slideroutine.stop;
1517
1518                                 ~synthslide.value;
1519                                 ~currentsynth = "s7"; ~synthmonitorfunc.value;
1520
1521                         });
1522                         ~bplaces8 = Button.new(w,Rect(~bpf8l,~bpf8t+~bpf8w,~bpf8h,~bpf8w)).states_([["s8",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
1523
1524                                 if(~ts.value == 1,
1525                                         {if(~tst == nil, {nil}, {~tst.close;});
1526                                                 ~timevals.value;
1527                                                 ~timer.stop; ~systemclock.stop; ~systemclock.clear; ~time8s = 0;
1528                                                 ~timer = Routine({inf.do({
1529                                                         ~time8s =
1530                                                         ~time8s+0.01; ~slot = "s8_"+~time8s.asString; 0.01.wait;});}); ~systemclock = SystemClock.play(~timer);},
1531                                         {nil});
1532
1533
1534                                 if(~slidetime8 == nil, {~slidetime8 = 4}); if(~slidedo8 == nil, {~slidedo8 = 2000;}); ~slidecount = ~slidedo8;
1535                                 #g,h,i,j,k,l,m,n,o,p,q,r = (([ ~f1,~f2,~f3,~f4,~f5,~f6,~f7 ]-
1536                                         [ fp1h,fp2h,fp3h,fp4h,fp5h,fp6h,fp7h])*(-1)/~slidedo8);
1537
1538                                 ~slidetime = ~slidetime8; ~slidedo = ~slidedo8;
1539
1540                                 ~slideroutine.stop;
1541
1542                                 ~synthslide.value;
1543                                 ~currentsynth = "s8"; ~synthmonitorfunc.value;
1544                         });
1545
1546                         if(~slidetimeall == nil, {~slidetimeall = 1});
1547                         if(~slidetime1 == nil, {~slidetime1 = 1});
1548                         if(~slidetime2 == nil, {~slidetime2 = 1});
1549                         if(~slidetime3 == nil, {~slidetime3 = 1});
1550                         if(~slidetime4 == nil, {~slidetime4 = 1});
1551                         if(~slidetime5 == nil, {~slidetime5 = 1});
1552                         if(~slidetime6 == nil, {~slidetime6 = 1});
1553                         if(~slidetime7 == nil, {~slidetime7 = 1});
1554                         if(~slidetime8 == nil, {~slidetime8 = 1});
1555
1556                         if(~slidedoall == nil, {~slidedoall = 432});
1557                         if(~slidedo1 == nil, {~slidedo1 = 432});
1558                         if(~slidedo2 == nil, {~slidedo2 = 432});
1559                         if(~slidedo3 == nil, {~slidedo3 = 432});
1560                         if(~slidedo4 == nil, {~slidedo4 = 432});
1561                         if(~slidedo5 == nil, {~slidedo5 = 432});
1562                         if(~slidedo6 == nil, {~slidedo6 = 432});
1563                         if(~slidedo7 == nil, {~slidedo7 = 432});
1564                         if(~slidedo8 == nil, {~slidedo8 = 432});
1565
1566
1567                         ~slidevals = Button.new(w,Rect(Window.screenBounds.width-20-20-20,~bpt+69+5,20,20/1.6180339887499)).states_([["s",Color.white,Color.black],["s",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
1568
1569                                 if(button.value == 1, {
1570                                         ({
1571                                                 arg lefttime = 0 , lefttimebox = 52, leftdo = lefttimebox+widthbox+6, leftdobox = leftdo+57, top = 0,width=52, height = 16,  widthbox=52, heightbox = 16, inc=0, lw = 0,  uw = 0, numw = 40;
1572                                                 var tall, stall, iall, siall, st1, st2, st3, st4, st5, st6, st7, st8, si1, si2, si3, si4, si5, si6, si7, si8, t1,t2,t3,t4,t5,t6,t7,t8,i1,i2,i3,i4,i5,i6,i7,i8;
1573                                                 ~slideview = View(w, Rect(Window.screenBounds.width-(340+46),Window.screenBounds.height-(340+46/1.6180339887499)-110,340+46,340+46/1.6180339887499)).front;
1574                                                 /*w.view.decorator=FlowLayout(w.view.bounds);
1575                                                 w.view.decorator.gap=2@2;*/
1576
1577                                                 tall = StaticText(~slideview, Rect(lefttime , top=top, width, height)).background_(Color.black).string_("all time").stringColor_(Color.white);
1578                                                 t1 = StaticText(~slideview, Rect(lefttime , top=top+height, width, height)).background_(Color.black).string_("s1 time").stringColor_(Color.white);
1579                                                 t2 = StaticText(~slideview, Rect(lefttime , top=top+height, width, height)).background_(Color.black).string_("s2 time").stringColor_(Color.white);
1580                                                 t3 = StaticText(~slideview, Rect(lefttime , top=top+height, width, height)).background_(Color.black).string_("s3 time").stringColor_(Color.white);
1581                                                 t4 = StaticText(~slideview, Rect(lefttime , top=top+height, width, height)).background_(Color.black).string_("s4 time").stringColor_(Color.white);
1582                                                 t5 = StaticText(~slideview, Rect(lefttime , top=top+height, width, height)).background_(Color.black).string_("s5 time").stringColor_(Color.white);
1583                                                 t6 = StaticText(~slideview, Rect(lefttime , top=top+height, width, height)).background_(Color.black).string_("s6 time").stringColor_(Color.white);
1584                                                 t7 = StaticText(~slideview, Rect(lefttime , top=top+height, width, height)).background_(Color.black).string_("s7 time").stringColor_(Color.white);
1585                                                 t8 = StaticText(~slideview, Rect(lefttime , top=top+height, width, height)).background_(Color.black).string_("s8 time").stringColor_(Color.white);
1586
1587                                                 top = 0;
1588
1589                                                 stall=NumberBox(~slideview, Rect(lefttimebox , top=top, widthbox, heightbox)).background_(Color.black).normalColor_(Color.white;).value_(~slidetimeall);
1590                                                 st1=NumberBox(~slideview, Rect(lefttimebox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).normalColor_(Color.white;).value_(~slidetime1);
1591                                                 st2=NumberBox(~slideview, Rect(lefttimebox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).normalColor_(Color.white;).value_(~slidetime2);
1592                                                 st3=NumberBox(~slideview, Rect(lefttimebox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).normalColor_(Color.white;).value_(~slidetime3);
1593                                                 st4=NumberBox(~slideview, Rect(lefttimebox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).normalColor_(Color.white;).value_(~slidetime4);
1594                                                 st5=NumberBox(~slideview, Rect(lefttimebox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).normalColor_(Color.white;).value_(~slidetime5);
1595                                                 st6=NumberBox(~slideview, Rect(lefttimebox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).normalColor_(Color.white;).value_(~slidetime6);
1596                                                 st7=NumberBox(~slideview, Rect(lefttimebox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).normalColor_(Color.white;).value_(~slidetime7);
1597                                                 st8=NumberBox(~slideview, Rect(lefttimebox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).normalColor_(Color.white;).value_(~slidetime8);
1598
1599                                                 top = 0;
1600
1601                                                 iall = StaticText(~slideview, Rect(leftdo , top=top, width, height)).background_(Color.black).string_("all incr").stringColor_(Color.white);
1602                                                 i1 = StaticText(~slideview, Rect(leftdo , top=top+height, width, height)).background_(Color.black).string_("s1 incr").stringColor_(Color.white);
1603                                                 i2 = StaticText(~slideview, Rect(leftdo , top=top+height, width, height)).background_(Color.black).string_("s2 incr").stringColor_(Color.white);
1604                                                 i3 = StaticText(~slideview, Rect(leftdo , top=top+height, width, height)).background_(Color.black).string_("s3 incr").stringColor_(Color.white);
1605                                                 i4 = StaticText(~slideview, Rect(leftdo , top=top+height, width, height)).background_(Color.black).string_("s4 incr").stringColor_(Color.white);
1606                                                 i5 = StaticText(~slideview, Rect(leftdo , top=top+height, width, height)).background_(Color.black).string_("s5 incr").stringColor_(Color.white);
1607                                                 i6 = StaticText(~slideview, Rect(leftdo , top=top+height, width, height)).background_(Color.black).string_("s6 incr").stringColor_(Color.white);
1608                                                 i7 = StaticText(~slideview, Rect(leftdo , top=top+height, width, height)).background_(Color.black).string_("s7 incr").stringColor_(Color.white);
1609                                                 i8 = StaticText(~slideview, Rect(leftdo , top=top+height, width, height)).background_(Color.black).string_("s8 incr").stringColor_(Color.white);
1610
1611                                                 top = 0;
1612
1613                                                 siall=NumberBox(~slideview, Rect(leftdobox , top=top, widthbox, heightbox)).background_(Color.black).normalColor_(Color.white;).value_(~slidedoall);
1614                                                 si1=NumberBox(~slideview, Rect(leftdobox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).normalColor_(Color.white;).value_(~slidedo1);
1615                                                 ~si2=NumberBox(~slideview, Rect(leftdobox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).normalColor_(Color.white;).value_(~slidedo2);
1616                                                 ~si3=NumberBox(~slideview, Rect(leftdobox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).normalColor_(Color.white;).value_(~slidedo3);
1617                                                 ~si4=NumberBox(~slideview, Rect(leftdobox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).normalColor_(Color.white;).value_(~slidedo4);
1618                                                 ~si5=NumberBox(~slideview, Rect(leftdobox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).normalColor_(Color.white;).value_(~slidedo5);
1619                                                 ~si6=NumberBox(~slideview, Rect(leftdobox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).normalColor_(Color.white;).value_(~slidedo6);
1620                                                 ~si7=NumberBox(~slideview, Rect(leftdobox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).normalColor_(Color.white;).value_(~slidedo7);
1621                                                 ~si8=NumberBox(~slideview, Rect(leftdobox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).normalColor_(Color.white;).value_(~slidedo8);
1622
1623                                                 stall.action_({arg val;
1624                                                         ~slidetimeall = val.value;
1625                                                         ~slidetime1 = val.value;
1626                                                         ~slidetime2 = val.value;
1627                                                         ~slidetime3 = val.value;
1628                                                         ~slidetime4 = val.value;
1629                                                         ~slidetime5 = val.value;
1630                                                         ~slidetime6 = val.value;
1631                                                         ~slidetime7 = val.value;
1632                                                         ~slidetime8 = val.value;
1633                                                         ~slideview.close; ~slidevals.valueAction_(1);
1634                                                 });
1635                                                 st1.action_({arg val; ~slidetime1 = val.value;});
1636                                                 st2.action_({arg val; ~slidetime2 = val.value;});
1637                                                 st3.action_({arg val; ~slidetime3 = val.value;});
1638                                                 st4.action_({arg val; ~slidetime4 = val.value;});
1639                                                 st5.action_({arg val; ~slidetime5 = val.value;});
1640                                                 st6.action_({arg val; ~slidetime6 = val.value;});
1641                                                 st7.action_({arg val; ~slidetime7 = val.value;});
1642                                                 st8.action_({arg val; ~slidetime8 = val.value;});
1643
1644                                                 siall.action_({arg val;
1645                                                         ~slidedoall = val.value;
1646                                                         ~slidedo1 = val.value;
1647                                                         ~slidedo2 = val.value;
1648                                                         ~slidedo3 = val.value;
1649                                                         ~slidedo4 = val.value;
1650                                                         ~slidedo5 = val.value;
1651                                                         ~slidedo6 = val.value;
1652                                                         ~slidedo7 = val.value;
1653                                                         ~slidedo8 = val.value;
1654                                                         ~slideview.close; ~slidevals.valueAction_(1);
1655                                                 });
1656                                                 si1.action_({arg val; ~slidedo1 = val.value;});
1657                                                 ~si2.action_({arg val; ~slidedo2 = val.value;});
1658                                                 ~si3.action_({arg val; ~slidedo3 = val.value;});
1659                                                 ~si4.action_({arg val; ~slidedo4 = val.value;});
1660                                                 ~si5.action_({arg val; ~slidedo5 = val.value;});
1661                                                 ~si6.action_({arg val; ~slidedo6 = val.value;});
1662                                                 ~si7.action_({arg val; ~slidedo7 = val.value;});
1663                                                 ~si8.action_({arg val; ~slidedo8 = val.value;});
1664
1665                                                 ~slideview.background_(Color.black);
1666
1667                                                 ~closeslidebutton = Button.new(~slideview,Rect(220, top+40, 40, 40/~gm)).states_([["close",Color.white,Color.black]]).action_({arg button;
1668
1669                                                         ~slideview.close; ~slidevals.value = 0;
1670                                                 });
1671
1672                                         }.value);
1673
1674                                         ~slideview.front;
1675                                 }, {~slideview.close});
1676                         });
1677
1678                         mute1 = Button.new(w,Rect(~bpl+(16*1),~bpt+69+5,16,16/1.6180339887499)).states_([["1",Color.white,Color.black],["",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
1679                                 case
1680                                 {~la1.isRunning == true}{
1681                                         if(button.value == 0, {
1682                                                 (~vol1 = ~vol;
1683                                                         1.do({
1684                                                                 ~la1.set(\vol, ~vol1);
1685                                                 }););
1686                                                 }, {(~vol1 = 0;
1687                                                         1.do({
1688                                                                 ~la1.set(\vol, ~vol1);
1689                                                         }););
1690                                         });
1691                                 }
1692                                 {~la.isRunning == true}{
1693                                         if(button.value == 0, {
1694                                                 (~vol1 = ~vol;
1695                                                         1.do({
1696                                                                 ~la.set(\vol, ~vol1);
1697                                                 }););
1698                                                 }, {(~vol1 = 0;
1699                                                         1.do({
1700                                                                 ~la.set(\vol, ~vol1);
1701                                                         }););
1702                                         });
1703                                 };
1704                         });
1705
1706                         mute2 = Button.new(w,Rect(~bpl+(16*2),~bpt+69+5,16,16/1.6180339887499)).states_([["2",Color.white,Color.black],["",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
1707                                 case
1708                                 {~la1.isRunning == true}{
1709                                         if(button.value == 0, {
1710                                                 (~vol2 = ~vol;
1711                                                         1.do({
1712                                                                 ~lb1.set(\vol, ~vol2);
1713                                                 }););
1714                                                 }, {(~vol2 = 0;
1715                                                         1.do({
1716                                                                 ~lb1.set(\vol, ~vol2);
1717                                                         }););
1718                                         });
1719                                 }
1720                                 {~la.isRunning == true}{
1721                                         if(button.value == 0, {
1722                                                 (~vol2 = ~vol;
1723                                                         1.do({
1724                                                                 ~lb.set(\vol, ~vol2);
1725                                                 }););
1726                                                 }, {(~vol2 = 0;
1727                                                         1.do({
1728                                                                 ~lb.set(\vol, ~vol2);
1729                                                         }););
1730                                         });
1731                                 };
1732                         });
1733                         mute3 = Button.new(w,Rect(~bpl+(16*3),~bpt+69+5,16,16/1.6180339887499)).states_([["3",Color.white,Color.black],["",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
1734                                 case
1735                                 {~la1.isRunning == true}{
1736                                         if(button.value == 0, {
1737                                                 (~vol3 = ~vol;
1738                                                         1.do({
1739                                                                 ~lc1.set(\vol, ~vol3);
1740                                                 }););
1741                                                 }, {(~vol3 = 0;
1742                                                         1.do({
1743                                                                 ~lc1.set(\vol, ~vol3);
1744                                                         }););
1745                                         });
1746                                 }
1747                                 {~la.isRunning == true}{
1748                                         if(button.value == 0, {
1749                                                 (~vol3 = ~vol;
1750                                                         1.do({
1751                                                                 ~lc.set(\vol, ~vol3);
1752                                                 }););
1753                                                 }, {(~vol3 = 0;
1754                                                         1.do({
1755                                                                 ~lc.set(\vol, ~vol3);
1756                                                         }););
1757                                         });
1758                                 };
1759                         });
1760                         mute4 = Button.new(w,Rect(~bpl+(16*4),~bpt+69+5,16,16/1.6180339887499)).states_([["4",Color.white,Color.black],["",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
1761                                 case
1762                                 {~la1.isRunning == true}{
1763                                         if(button.value == 0, {
1764                                                 (~vol4 = ~vol;
1765                                                         1.do({
1766                                                                 ~ld1.set(\vol, ~vol4);
1767                                                 }););
1768                                                 }, {(~vol4 = 0;
1769                                                         1.do({
1770                                                                 ~ld1.set(\vol, ~vol4);
1771                                                         }););
1772                                         });
1773                                 }
1774                                 {~la.isRunning == true}{
1775                                         if(button.value == 0, {
1776                                                 (~vol4 = ~vol;
1777                                                         1.do({
1778                                                                 ~ld.set(\vol, ~vol4);
1779                                                 }););
1780                                                 }, {(~vol4 = 0;
1781                                                         1.do({
1782                                                                 ~ld.set(\vol, ~vol4);
1783                                                         }););
1784                                         });
1785                                 };
1786                         });
1787                         mute5 = Button.new(w,Rect(~bpl+(16*5),~bpt+69+5,16,16/1.6180339887499)).states_([["5",Color.white,Color.black],["",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
1788                                 case
1789                                 {~la1.isRunning == true}{
1790                                         if(button.value == 0, {
1791                                                 (~vol5 = ~vol;
1792                                                         1.do({
1793                                                                 ~le1.set(\vol, ~vol5);
1794                                                 }););
1795                                                 }, {(~vol5 = 0;
1796                                                         1.do({
1797                                                                 ~le1.set(\vol, ~vol5);
1798                                                         }););
1799                                         });
1800                                 }
1801                                 {~la.isRunning == true}{
1802                                         if(button.value == 0, {
1803                                                 (~vol5 = ~vol;
1804                                                         1.do({
1805                                                                 ~le.set(\vol, ~vol5);
1806                                                 }););
1807                                                 }, {(~vol5 = 0;
1808                                                         1.do({
1809                                                                 ~le.set(\vol, ~vol5);
1810                                                         }););
1811                                         });
1812                                 };
1813                         });
1814                         mute6 = Button.new(w,Rect(~bpl+(16*6),~bpt+69+5,16,16/1.6180339887499)).states_([["6",Color.white,Color.black],["",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
1815                                 case
1816                                 {~la1.isRunning == true}{
1817                                         if(button.value == 0, {
1818                                                 (~vol6 = ~vol;
1819                                                         1.do({
1820                                                                 ~lf1.set(\vol, ~vol6);
1821                                                 }););
1822                                                 }, {(~vol6 = 0;
1823                                                         1.do({
1824                                                                 ~lf1.set(\vol, ~vol6);
1825                                                         }););
1826                                         });
1827                                 }
1828                                 {~la.isRunning == true}{
1829                                         if(button.value == 0, {
1830                                                 (~vol6 = ~vol;
1831                                                         1.do({
1832                                                                 ~lf.set(\vol, ~vol6);
1833                                                 }););
1834                                                 }, {(~vol6 = 0;
1835                                                         1.do({
1836                                                                 ~lf.set(\vol, ~vol6);
1837                                                         }););
1838                                         });
1839                                 };
1840
1841                         });
1842                         mute7 = Button.new(w,Rect(~bpl+(16*7),~bpt+69+5,16,16/1.6180339887499)).states_([["7",Color.white,Color.black],["",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
1843                                 case
1844                                 {~la1.isRunning == true}{
1845                                         if(button.value == 0, {
1846                                                 (~vol7 = ~vol;
1847                                                         1.do({
1848                                                                 ~lg1.set(\vol, ~vol7);
1849                                                 }););
1850                                                 }, {(~vol7 = 0;
1851                                                         1.do({
1852                                                                 ~lg1.set(\vol, ~vol7);
1853                                                         }););
1854                                         });
1855                                 }
1856                                 {~la.isRunning == true}{
1857                                         if(button.value == 0, {
1858                                                 (~vol7 = ~vol;
1859                                                         1.do({
1860                                                                 ~lg.set(\vol, ~vol7);
1861                                                 }););
1862                                                 }, {(~vol7 = 0;
1863                                                         1.do({
1864                                                                 ~lg.set(\vol, ~vol7);
1865                                                         }););
1866                                         });
1867                                 };
1868                         });
1869
1870                         muteall = Button.new(w,Rect(~bpl+(0),~bpt+69+5,16,16/1.6180339887499)).states_([["m",Color.white,Color.black],["u",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
1871
1872                                 if(button.value == 0, {
1873                                         mute1.value = 0;
1874                                         mute2.value = 0;
1875                                         mute3.value = 0;
1876                                         mute4.value = 0;
1877                                         mute5.value = 0;
1878                                         mute6.value = 0;
1879                                         mute7.value = 0;
1880                                         /*mute8.value = 0;
1881                                         mute9.value = 0;
1882                                         mute10.value = 0;
1883                                         mute11.value = 0;
1884                                         mute12.value = 0;*/
1885
1886                                         ~vol1 = ~vol;
1887                                         ~vol2 = ~vol;
1888                                         ~vol3 = ~vol;
1889                                         ~vol4 = ~vol;
1890                                         ~vol5 = ~vol;
1891                                         ~vol6 = ~vol;
1892                                         ~vol7 = ~vol;
1893                                         ~vol8 = ~vol;
1894                                         ~vol9 = ~vol;
1895                                         ~vol10 = ~vol;
1896                                         ~vol11 = ~vol;
1897                                         ~vol12 = ~vol;
1898                                         },
1899                                         {
1900                                                 mute1.value = 1;
1901                                                 mute2.value = 1;
1902                                                 mute3.value = 1;
1903                                                 mute4.value = 1;
1904                                                 mute5.value = 1;
1905                                                 mute6.value = 1;
1906                                                 mute7.value = 1;
1907                                                 /*mute8.value = 1;
1908                                                 mute9.value = 1;
1909                                                 mute10.value = 1;
1910                                                 mute11.value = 1;
1911                                                 mute12.value = 1;*/
1912
1913                                                 ~vol1 = 0;
1914                                                 ~vol2 = 0;
1915                                                 ~vol3 = 0;
1916                                                 ~vol4 = 0;
1917                                                 ~vol5 = 0;
1918                                                 ~vol6 = 0;
1919                                                 ~vol7 = 0;
1920                                                 ~vol8 = 0;
1921                                                 ~vol9 = 0;
1922                                                 ~vol10 = 0;
1923                                                 ~vol11 = 0;
1924                                                 ~vol12 = 0;
1925                                 });
1926                                 ~synthflow.value;
1927                         });
1928
1929                         /*~menu1values = ["0.167 steps/kws","0.5 steps/kws","1 step/kws","9 steps/kws"];
1930                         case
1931                         {~menu1nval == nil}{~menu1start = ~menu1values.at(0)}
1932                         {~menu1nval == ~ngm6;}{~menu1start = ~menu1values.at(0)}
1933                         {~menu1nval == ~ngm2;}{~menu1start = ~menu1values.at(1)}
1934                         {~menu1nval == ~ngm1;}{~menu1start = ~menu1values.at(2)}
1935                         {~menu1nval == ~gm;}{~menu1start = ~menu1values.at(3)};
1936                         if(~menu1nvalstart.value == nil, {~menu1nvalstart = ~ngm6}, {~menu1nvalstart = ~menu1nval});
1937                         menu1=PopUpMenu(w,Rect(20+60*2+16+(60*2),Window.screenBounds.height-88+(30/1.6180339887499*0),60*2,60/1.6180339887499)).items_(~mvalue = (-1); [~menu1start.asString]++Array.fill(4, {~menu1values.at(~mvalue = ~mvalue+1);});).background_(Color.black).stringColor_(Color.white);
1938 */
1939                          x=0;
1940                         ~menu2values = Array.fill(20, {(x=x+1).asString++" kws/inst"});
1941                         case
1942                         {~gsinenum == nil}{~menu2start = ~menu2values.at(6)}
1943                         {~gsinenum == 1}{~menu2start = ~menu2values.at(0)}
1944                         {~gsinenum == 2}{~menu2start = ~menu2values.at(1)}
1945                         {~gsinenum == 3}{~menu2start = ~menu2values.at(2)}
1946                         {~gsinenum == 4}{~menu2start = ~menu2values.at(3)}
1947                         {~gsinenum == 5}{~menu2start = ~menu2values.at(4)}
1948                         {~gsinenum == 6}{~menu2start = ~menu2values.at(5)}
1949                         {~gsinenum == 7}{~menu2start = ~menu2values.at(6)}
1950                         {~gsinenum == 8}{~menu2start = ~menu2values.at(7)}
1951                         {~gsinenum == 9}{~menu2start = ~menu2values.at(8)}
1952                         {~gsinenum == 10}{~menu2start = ~menu2values.at(9)}
1953                         {~gsinenum == 11}{~menu2start = ~menu2values.at(10)}
1954                         {~gsinenum == 12}{~menu2start = ~menu2values.at(11)}
1955                         {~gsinenum == 13}{~menu2start = ~menu2values.at(12)}
1956                         {~gsinenum == 14}{~menu2start = ~menu2values.at(13)}
1957                         {~gsinenum == 15}{~menu2start = ~menu2values.at(14)}
1958                         {~gsinenum == 16}{~menu2start = ~menu2values.at(15)};
1959                         if(~menu2synthdefstart.value == nil, {~menu2synthdefstart = 36}, {~menu2synthdefstart = ~gsinenum});
1960                         menu2=PopUpMenu(w,Rect(20+60*2+16,Window.screenBounds.height-52+(30/1.6180339887499*0),60*2,60/1.6180339887499)).items_(~mvalue = (-1); [~menu2start.asString]++Array.fill(16, {~menu2values.at(~mvalue = ~mvalue+1);});).background_(Color.black).stringColor_(Color.white);
1961
1962                         set1=Button(w,Rect(20+60*2+16+120, Window.screenBounds.height-52+(16/1.6180339887499*0),60,60/1.6180339887499)).states_([["set",Color.white,Color.black]]).mouseDownAction_({
1963
1964                                 ~st = StaticText(w, Rect(20+60*2+16+250,Window.screenBounds.height-40, 62, 20)).background_(Color.black);
1965                                 ~st.stringColor = Color.white;
1966                                 ~st.string = "loading...";
1967                                 AppClock.sched(0.2,{
1968                                         ~st.close;
1969                                 });
1970
1971                                 AppClock.sched(0,{
1972
1973                                         if(~bfreq.value > 0, {~basefreq = ~freqmap.at(~bfreq.value - 1)}, {~basefreq = ~bfreqstart});
1974
1975                                         (#a,b,c,d,e,f = [ ~basefreq,~basefreq,~basefreq,~basefreq,~basefreq,~basefreq  ]; ~a = a; ~b = b; ~c =c; ~d = d; ~e = e;~f=f;);
1976
1977                                         /*case
1978                                         {menu1.value == 0}{~nval = ~menu1nvalstart; ~menu1nval = ~menu1nvalstart}
1979                                         {menu1.value == 1}{~nval = ~ngm6; ~menu1nval = ~ngm6;}
1980                                         {menu1.value == 2}{~nval = ~ngm2; ~menu1nval = ~ngm2;}
1981                                         {menu1.value == 3}{~nval = ~ngm1; ~menu1nval = ~ngm1;}
1982                                         {menu1.value == 4}{~nval = ~gm; ~menu1nval = ~gm;};*/
1983
1984                                         case
1985                                         {menu2.value == 0}{~gsinenum = ~menu2synthdefstart; ~gsine.value;}
1986                                         {menu2.value == 1}{~gsinenum = 1; ~gsine.value;}
1987                                         {menu2.value == 2}{~gsinenum = 2; ~gsine.value;}
1988                                         {menu2.value == 3}{~gsinenum = 3; ~gsine.value;}
1989                                         {menu2.value == 4}{~gsinenum = 4; ~gsine.value;}
1990                                         {menu2.value == 5}{~gsinenum = 5; ~gsine.value;}
1991                                         {menu2.value == 6}{~gsinenum = 6; ~gsine.value;}
1992                                         {menu2.value == 7}{~gsinenum = 7; ~gsine.value;}
1993                                         {menu2.value == 8}{~gsinenum = 8; ~gsine.value;}
1994                                         {menu2.value == 9}{~gsinenum = 9; ~gsine.value;}
1995                                         {menu2.value == 10}{~gsinenum = 10; ~gsine.value;}
1996                                         {menu2.value == 11}{~gsinenum = 11; ~gsine.value;}
1997                                         {menu2.value == 12}{~gsinenum = 12; ~gsine.value;}
1998                                         {menu2.value == 13}{~gsinenum = 13; ~gsine.value;}
1999                                         {menu2.value == 14}{~gsinenum = 14; ~gsine.value;}
2000                                         {menu2.value == 15}{~gsinenum = 15; ~gsine.value;}
2001                                         {menu2.value == 16}{~gsinenum = 16; ~gsine.value;};
2002                                 });
2003
2004                         })
2005                         .action_({
2006                         });
2007
2008                         ~midifunc = {
2009                                 ~snb = 0;
2010                                 /*~etemp = EqualTemperament(12, calibratefreq: 432, calibratenote: 69);*/
2011                                 MIDIFunc.cc({if(~snb == 0, {~snb = 1},{~snb = 0});}, ccNum: 60);
2012                                 MIDIdef.cc('l1', { |val|
2013                                         case
2014                                         {~la.isRunning == true}{
2015                                                 ~la.set(\dur, ~f1 = \dur.asSpec.map(val / 127));
2016                                         }{~la1.isRunning == true}{
2017                                                 ~la1.set(\dur, ~f1 = \dur.asSpec.map(val / 127));
2018                                         };
2019                                         ~tunefreq1 = ~f1; ~f1 = ~f1+~f1t;
2020                                         {if((~f1 > ~outmaxa) or: (~f1 < ~outmina), {~z25.close;~z1.close;~z25 = (CompositeView(w, Rect((~f1.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+10, ~nw, 2)).background = Color.white;);}, {~z1.close;~z25.close;~z1 = (CompositeView(w, Rect((~f1.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+10, ~nw, 2)).background = Color.white;);});
2021                                         }.defer;
2022                                         /*if(~snb == 1,
2023                                         {{~nb = NumberBox.new(w,Rect(20,0,60,60/~gm)).value_(~f1.value;).background_(Color.black).normalColor_(Color.white;);}.defer;},
2024                                         {if(~nb == nil, {nil},{~nb.close;~nb==nil;})});*/
2025                                 }, ccNum: [0]);
2026                                 MIDIdef.cc('l2', { |val|
2027                                         case
2028                                         {~la.isRunning == true}{
2029                                                 ~lb.set(\dur, ~f2 = \dur.asSpec.map(val / 127));
2030                                         }{~la1.isRunning == true}{
2031                                                 ~lb1.set(\dur, ~f2 = \dur.asSpec.map(val / 127));
2032                                         };
2033                                         ~tunefreq2 = ~f2; ~f2 = ~f2+~f2t;
2034                                         {if((~f2 > ~outmaxa) or: (~f2 < ~outmina), {~z26.close;~z2.close;~z26 = (CompositeView(w, Rect((~f2.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+20, ~nw, 2)).background = Color.white;);}, {~z2.close;~z26.close;~z2 = (CompositeView(w, Rect((~f2.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+20, ~nw, 2)).background = Color.white;);});
2035                                         }.defer;
2036                                 }, ccNum: [1]);
2037                                 MIDIdef.cc('l3', { |val|
2038                                         case
2039                                         {~la.isRunning == true}{
2040                                                 ~lc.set(\dur, ~f3 = \dur.asSpec.map(val / 127));
2041                                         }{~la1.isRunning == true}{
2042                                                 ~lc1.set(\dur, ~f3 = \dur.asSpec.map(val / 127));
2043                                         };
2044                                         ~tunefreq3 = ~f3; ~f3 = ~f3+~f3t;
2045                                         {if((~f3 > ~outmaxa) or: (~f3 < ~outmina), {~z27.close;~z3.close;~z27 = (CompositeView(w, Rect((~f3.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+30, ~nw, 2)).background = Color.white;);}, {~z3.close;~z27.close;~z3 = (CompositeView(w, Rect((~f3.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+30, ~nw, 2)).background = Color.white;);});
2046                                         }.defer;
2047                                 }, ccNum: 2);
2048                                 MIDIdef.cc('l4', { |val|
2049                                         case
2050                                         {~la.isRunning == true}{
2051                                                 ~ld.set(\dur, ~f4 = \dur.asSpec.map(val / 127));
2052                                         }{~la1.isRunning == true}{
2053                                                 ~ld1.set(\dur, ~f4 = \dur.asSpec.map(val / 127));
2054                                         };
2055                                         ~tunefreq4 = ~f4; ~f4 = ~f4+~f4t;
2056                                         {if((~f4 > ~outmaxa) or: (~f4 < ~outmina), {~z28.close;~z4.close;~z28 = (CompositeView(w, Rect((~f4.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+40, ~nw, 2)).background = Color.white;);}, {~z4.close;~z28.close;~z4 = (CompositeView(w, Rect((~f4.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+40, ~nw, 2)).background = Color.white;);});
2057                                         }.defer;
2058                                 }, ccNum: 3);
2059                                 MIDIdef.cc('l5', { |val|
2060                                         case
2061                                         {~la.isRunning == true}{
2062                                                 ~le.set(\dur, ~f5 = \dur.asSpec.map(val / 127));
2063                                         }{~la1.isRunning == true}{
2064                                                 ~le1.set(\dur, ~f5 = \dur.asSpec.map(val / 127));
2065                                         };
2066                                         ~tunefreq5 = ~f5; ~f5 = ~f5+~f5t;
2067                                         {if((~f5 > ~outmaxa) or: (~f5 < ~outmina), {~z29.close;~z5.close;~z29 = (CompositeView(w, Rect((~f5.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+50, ~nw, 2)).background = Color.white;);}, {~z5.close;~z29.close;~z5 = (CompositeView(w, Rect((~f5.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+50, ~nw, 2)).background = Color.white;);});
2068                                         }.defer;
2069                                 }, ccNum: 4);
2070                                 MIDIdef.cc('l6', { |val|
2071                                         case
2072                                         {~la.isRunning == true}{
2073                                                 ~lf.set(\dur, ~f6 = \dur.asSpec.map(val / 127));
2074                                         }{~la1.isRunning == true}{
2075                                                 ~lf1.set(\dur, ~f6 = \dur.asSpec.map(val / 127));
2076                                         };
2077                                         ~tunefreq6 = ~f6; ~f6 = ~f6+~f6t;
2078                                         {if((~f6 > ~outmaxa) or: (~f6 < ~outmina), {~z30.close;~z6.close;~z30 = (CompositeView(w, Rect((~f6.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+60, ~nw, 2)).background = Color.white;);}, {~z6.close;~z30.close;~z6 = (CompositeView(w, Rect((~f6.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+60, ~nw, 2)).background = Color.white;);});
2079                                         }.defer;
2080                                 }, ccNum: 5);
2081                                 MIDIdef.cc('l7', { |val|
2082                                         case
2083                                         {~la.isRunning == true}{
2084                                                 ~lg.set(\dur, ~f7 = \dur.asSpec.map(val / 127));
2085                                         }{~la1.isRunning == true}{
2086                                                 ~lg1.set(\dur, ~f7 = \dur.asSpec.map(val / 127));
2087                                         };
2088                                         ~tunefreq7 = ~f7; ~f7 = ~f7+~f7t;
2089                                         {if((~f7 > ~outmaxa) or: (~f7 < ~outmina), {~z31.close;~z7.close;~z31 = (CompositeView(w, Rect((~f7.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+70, ~nw, 2)).background = Color.white;);}, {~z7.close;~z31.close;~z7 = (CompositeView(w, Rect((~f7.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+70, ~nw, 2)).background = Color.white;);});
2090                                         }.defer;
2091                                 }, ccNum: 6);
2092
2093                                 if(~f1t == nil, {~f1t = 0});
2094                                 if(~f2t == nil, {~f2t = 0});
2095                                 if(~f3t == nil, {~f3t = 0});
2096                                 if(~f4t == nil, {~f4t = 0});
2097                                 if(~f5t == nil, {~f5t = 0});
2098                                 if(~f6t == nil, {~f6t = 0});
2099                                 if(~f7t == nil, {~f7t = 0});
2100
2101                                 MIDIFunc.cc({|val|
2102                                         ~f1 = ~f1-~f1t;
2103                                         Spec.add(\tune, ([0, ~tunefreq1*~stepratio-~tunefreq1, \lin]));
2104                                         case
2105                                         {~la.isRunning == true}{
2106                                                 ~la.set(\tune, ~f1t = \tune.asSpec.map(val / 127));
2107                                         }{~la1.isRunning == true}{
2108                                                 ~la1.set(\tune, ~f1t = \tune.asSpec.map(val / 127));
2109                                         };
2110                                         ~f1 = ~f1+~f1t;
2111                                         {if((~f1 > ~outmaxa) or: (~f1 < ~outmina), {~z25.close;~z1.close;~z25 = (CompositeView(w, Rect((~f1.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+10, ~nw, 2)).background = Color.white;);}, {~z1.close;~z25.close;~z1 = (CompositeView(w, Rect((~f1.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+10, ~nw, 2)).background = Color.white;);});
2112                                         }.defer;
2113                                 }, ccNum: 16);
2114                                 MIDIFunc.cc({|val|
2115                                         ~f2 = ~f2-~f2t;
2116                                         Spec.add(\tune, ([0, ~tunefreq2*~stepratio-~tunefreq2, \lin]));
2117                                         case
2118                                         {~la.isRunning == true}{
2119                                                 ~lb.set(\tune, ~f2t = \tune.asSpec.map(val / 127));
2120                                         }{~la1.isRunning == true}{
2121                                                 ~lb1.set(\tune, ~f2t = \tune.asSpec.map(val / 127));
2122                                         };
2123                                         ~f2 = ~f2+~f2t;
2124                                         {if((~f2 > ~outmaxa) or: (~f2 < ~outmina), {~z26.close;~z2.close;~z26 = (CompositeView(w, Rect((~f2.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+20, ~nw, 2)).background = Color.white;);}, {~z2.close;~z26.close;~z2 = (CompositeView(w, Rect((~f2.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+20, ~nw, 2)).background = Color.white;);});
2125                                         }.defer;
2126                                 }, ccNum: 17);
2127                                 MIDIFunc.cc({|val|
2128                                         ~f3 = ~f3-~f3t;
2129                                         Spec.add(\tune, ([0, ~tunefreq3*~stepratio-~tunefreq3, \lin]));
2130                                         case
2131                                         {~la.isRunning == true}{
2132                                                 ~lc.set(\tune, ~f3t = \tune.asSpec.map(val / 127));
2133                                         }{~la1.isRunning == true}{
2134                                                 ~lc1.set(\tune, ~f3t = \tune.asSpec.map(val / 127));
2135                                         };
2136                                         ~f3 = ~f3+~f3t;
2137                                         {if((~f3 > ~outmaxa) or: (~f3 < ~outmina), {~z27.close;~z3.close;~z27 = (CompositeView(w, Rect((~f3.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+30, ~nw, 2)).background = Color.white;);}, {~z3.close;~z27.close;~z3 = (CompositeView(w, Rect((~f3.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+30, ~nw, 2)).background = Color.white;);});
2138                                         }.defer;
2139                                 }, ccNum: 18);
2140                                 MIDIFunc.cc({|val|
2141                                         ~f4 = ~f4-~f4t;
2142                                         Spec.add(\tune, ([0, ~tunefreq4*~stepratio-~tunefreq4, \lin]));
2143                                         case
2144                                         {~la.isRunning == true}{
2145                                                 ~ld.set(\tune, ~f4t = \tune.asSpec.map(val / 127));
2146                                         }{~la1.isRunning == true}{
2147                                                 ~ld1.set(\tune, ~f4t = \tune.asSpec.map(val / 127));
2148                                         };
2149                                         ~f4 = ~f4+~f4t;
2150                                         {if((~f4 > ~outmaxa) or: (~f4 < ~outmina), {~z28.close;~z4.close;~z28 = (CompositeView(w, Rect((~f4.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+40, ~nw, 2)).background = Color.white;);}, {~z4.close;~z28.close;~z4 = (CompositeView(w, Rect((~f4.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+40, ~nw, 2)).background = Color.white;);});
2151                                         }.defer;
2152                                 }, ccNum: 19);
2153                                 MIDIFunc.cc({|val|
2154                                         ~f5 = ~f5-~f5t;
2155                                         Spec.add(\tune, ([0, ~tunefreq5*~stepratio-~tunefreq5, \lin]));
2156                                         case
2157                                         {~la.isRunning == true}{
2158                                                 ~le.set(\tune, ~f5t = \tune.asSpec.map(val / 127));
2159                                         }{~la1.isRunning == true}{
2160                                                 ~le1.set(\tune, ~f5t = \tune.asSpec.map(val / 127));
2161                                         };
2162                                         ~f5 = ~f5+~f5t;
2163                                         {if((~f5 > ~outmaxa) or: (~f5 < ~outmina), {~z29.close;~z5.close;~z29 = (CompositeView(w, Rect((~f5.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+50, ~nw, 2)).background = Color.white;);}, {~z5.close;~z29.close;~z5 = (CompositeView(w, Rect((~f5.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+50, ~nw, 2)).background = Color.white;);});
2164                                         }.defer;
2165                                 }, ccNum: 20);
2166                                 MIDIFunc.cc({|val|
2167                                         ~f6 = ~f6-~f6t;
2168                                         Spec.add(\tune, ([0, ~tunefreq6*~stepratio-~tunefreq6, \lin]));
2169                                         case
2170                                         {~la.isRunning == true}{
2171                                                 ~lf.set(\tune, ~f6t = \tune.asSpec.map(val / 127));
2172                                         }{~la1.isRunning == true}{
2173                                                 ~lf1.set(\tune, ~f6t = \tune.asSpec.map(val / 127));
2174                                         };
2175                                         ~f6 = ~f6+~f6t;
2176                                         {if((~f6 > ~outmaxa) or: (~f6 < ~outmina), {~z30.close;~z6.close;~z30 = (CompositeView(w, Rect((~f6.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+60, ~nw, 2)).background = Color.white;);}, {~z6.close;~z30.close;~z6 = (CompositeView(w, Rect((~f6.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+60, ~nw, 2)).background = Color.white;);});
2177                                         }.defer;
2178                                 }, ccNum: 21);
2179                                 MIDIFunc.cc({|val|
2180                                         ~f7 = ~f7-~f7t;
2181                                         Spec.add(\tune, ([0, ~tunefreq7*~stepratio-~tunefreq7, \lin]));
2182                                         case
2183                                         {~la.isRunning == true}{
2184                                                 ~lg.set(\tune, ~f7t = \tune.asSpec.map(val / 127));
2185                                         }{~la1.isRunning == true}{
2186                                                 ~lg1.set(\tune, ~f7t = \tune.asSpec.map(val / 127));
2187                                         };
2188                                         ~f7 = ~f7+~f7t;
2189                                         {if((~f7 > ~outmaxa) or: (~f7 < ~outmina), {~z31.close;~z7.close;~z31 = (CompositeView(w, Rect((~f7.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+70, ~nw, 2)).background = Color.white;);}, {~z7.close;~z31.close;~z7 = (CompositeView(w, Rect((~f7.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+70, ~nw, 2)).background = Color.white;);});
2190                                         }.defer;
2191                                 }, ccNum: 22);
2192
2193                                 MIDIFunc.cc({|val| {case{b3.value == 0}{b3.valueAction = 1};}.defer;}, ccNum: 41);
2194                                 MIDIFunc.cc({|val| {case{b3.value == 1}{b3.valueAction = 0};}.defer;}, ccNum: 42);
2195                                 MIDIFunc.cc({|val| {case{b4.value == 0}{b4.valueAction = 1};}.defer;}, ccNum: 43);
2196                                 MIDIFunc.cc({|val| {case{b4.value == 1}{b4.valueAction = 0};}.defer;}, ccNum: 44);
2197                                 /*MIDIFunc.cc({|val| {~bplaceo1.valueAction=0}.defer;}, ccNum: 32);
2198                                 MIDIFunc.cc({|val| {~bplaceo2.valueAction=0}.defer;}, ccNum: 33);
2199                                 MIDIFunc.cc({|val| {~bplaceo3.valueAction=0}.defer;}, ccNum: 34);
2200                                 MIDIFunc.cc({|val| {~bplaceo4.valueAction=0}.defer;}, ccNum: 35);
2201                                 MIDIFunc.cc({|val| {~bplaceo5.valueAction=0}.defer;}, ccNum: 36);
2202                                 MIDIFunc.cc({|val| {~bplaceo6.valueAction=0}.defer;}, ccNum: 37);
2203                                 MIDIFunc.cc({|val| {~bplaceo7.valueAction=0}.defer;}, ccNum: 38);
2204                                 MIDIFunc.cc({|val| {~bplaceo8.valueAction=0}.defer;}, ccNum: 39);
2205                                 MIDIFunc.cc({|val| {~bplacef1.valueAction=0}.defer;}, ccNum: 48);
2206                                 MIDIFunc.cc({|val| {~bplacef2.valueAction=0}.defer;}, ccNum: 49);
2207                                 MIDIFunc.cc({|val| {~bplacef3.valueAction=0}.defer;}, ccNum: 50);
2208                                 MIDIFunc.cc({|val| {~bplacef4.valueAction=0}.defer;}, ccNum: 51);
2209                                 MIDIFunc.cc({|val| {~bplacef5.valueAction=0}.defer;}, ccNum: 52);
2210                                 MIDIFunc.cc({|val| {~bplacef6.valueAction=0}.defer;}, ccNum: 53);
2211                                 MIDIFunc.cc({|val| {~bplacef7.valueAction=0}.defer;}, ccNum: 54);
2212                                 MIDIFunc.cc({|val| {~bplacef8.valueAction=0}.defer;}, ccNum: 55);
2213                                 MIDIFunc.cc({|val| {~bplaces1.valueAction=0}.defer;}, ccNum: 64);
2214                                 MIDIFunc.cc({|val| {~bplaces2.valueAction=0}.defer;}, ccNum: 65);
2215                                 MIDIFunc.cc({|val| {~bplaces3.valueAction=0}.defer;}, ccNum: 66);
2216                                 MIDIFunc.cc({|val| {~bplaces4.valueAction=0}.defer;}, ccNum: 67);
2217                                 MIDIFunc.cc({|val| {~bplaces5.valueAction=0}.defer;}, ccNum: 68);
2218                                 MIDIFunc.cc({|val| {~bplaces6.valueAction=0}.defer;}, ccNum: 69);
2219                                 MIDIFunc.cc({|val| {~bplaces7.valueAction=0}.defer;}, ccNum: 70);
2220                                 MIDIFunc.cc({|val| {~bplaces8.valueAction=0}.defer;}, ccNum: 71);
2221                                 */  MIDIFunc.cc({|val| {mute1.valueAction = 1;}.defer;}, ccNum: 48);
2222                                 MIDIFunc.cc({|val| {mute2.valueAction = 1;}.defer;}, ccNum: 49);
2223                                 MIDIFunc.cc({|val| {mute3.valueAction = 1;}.defer;}, ccNum: 50);
2224                                 MIDIFunc.cc({|val| {mute4.valueAction = 1;}.defer;}, ccNum: 51);
2225                                 MIDIFunc.cc({|val| {mute5.valueAction = 1;}.defer;}, ccNum: 52);
2226                                 MIDIFunc.cc({|val| {mute6.valueAction = 1;}.defer;}, ccNum: 53);
2227                                 MIDIFunc.cc({|val| {mute7.valueAction = 1;}.defer;}, ccNum: 54);
2228                                 MIDIFunc.cc({|val| {mute1.valueAction = 1;mute2.valueAction = 1;mute3.valueAction = 1;mute4.valueAction = 1;mute5.valueAction = 1;mute6.valueAction = 1;mute7.valueAction = 1;}.defer;}, ccNum: 55);
2229                                 MIDIFunc.cc({|val| {mute1.valueAction = 0;}.defer;}, ccNum: 32);
2230                                 MIDIFunc.cc({|val| {mute2.valueAction = 0;}.defer;}, ccNum: 33);
2231                                 MIDIFunc.cc({|val| {mute3.valueAction = 0;}.defer;}, ccNum: 34);
2232                                 MIDIFunc.cc({|val| {mute4.valueAction = 0;}.defer;}, ccNum: 35);
2233                                 MIDIFunc.cc({|val| {mute5.valueAction = 0;}.defer;}, ccNum: 36);
2234                                 MIDIFunc.cc({|val| {mute6.valueAction = 0;}.defer;}, ccNum: 37);
2235                                 MIDIFunc.cc({|val| {mute7.valueAction = 0;}.defer;}, ccNum: 38);
2236                                 MIDIFunc.cc({|val| {mute1.valueAction = 0;mute2.valueAction = 0;mute3.valueAction = 0;mute4.valueAction = 0;mute5.valueAction = 0;mute6.valueAction = 0;mute7.valueAction = 0;}.defer;}, ccNum: 39);
2237
2238                                 /*Spec.add(\dur, ~etemp.cps([0, 127, \exp]));*/
2239                                 Spec.add(\dur, ([~freqmap.at(0), ~freqmap.at(127), \exp]));
2240                                 /*Spec.add(\tune, ([0, 128, \lin]));*/
2241                         };
2242
2243                         ~midifunc.value;
2244
2245                         keycodeb = Button.new(w,Rect(Window.screenBounds.width-20-16,~bpt+160,16,16/1.6180339887499)).states_([
2246                                 ["1",Color.white,Color.black],
2247                                 ["2",Color.white,Color.black],
2248                                 ["3",Color.white,Color.black],
2249                                 ["4",Color.white,Color.black],
2250                                 ["5",Color.white,Color.black],
2251                                 ["6",Color.white,Color.black],
2252                                 ["7",Color.white,Color.black]]).action_({arg button;
2253
2254                                 case
2255                                 {button.value == 0}{
2256                                         ~z25.background = Color.green; ~z1.background = Color.green;
2257                                         ~z26.background = Color.white; ~z2.background = Color.white;
2258                                         ~z27.background = Color.white; ~z3.background = Color.white;
2259                                         ~z28.background = Color.white; ~z4.background = Color.white;
2260                                         ~z29.background = Color.white; ~z5.background = Color.white;
2261                                         ~z30.background = Color.white; ~z6.background = Color.white;
2262                                         ~z31.background = Color.white; ~z7.background = Color.white;
2263                                 }
2264                                 {button.value == 1}{
2265                                         ~z25.background = Color.white; ~z1.background = Color.white;
2266                                         ~z26.background = Color.green; ~z2.background = Color.green;
2267                                         ~z27.background = Color.white; ~z3.background = Color.white;
2268                                         ~z28.background = Color.white; ~z4.background = Color.white;
2269                                         ~z29.background = Color.white; ~z5.background = Color.white;
2270                                         ~z30.background = Color.white; ~z6.background = Color.white;
2271                                         ~z31.background = Color.white; ~z7.background = Color.white;
2272                                 }
2273                                 {button.value == 2}{
2274                                         ~z25.background = Color.white; ~z1.background = Color.white;
2275                                         ~z26.background = Color.white; ~z2.background = Color.white;
2276                                         ~z27.background = Color.green; ~z3.background = Color.green;
2277                                         ~z28.background = Color.white; ~z4.background = Color.white;
2278                                         ~z29.background = Color.white; ~z5.background = Color.white;
2279                                         ~z30.background = Color.white; ~z6.background = Color.white;
2280                                         ~z31.background = Color.white; ~z7.background = Color.white;
2281                                 }
2282                                 {button.value == 3}{
2283                                         ~z25.background = Color.white; ~z1.background = Color.white;
2284                                         ~z26.background = Color.white; ~z2.background = Color.white;
2285                                         ~z27.background = Color.white; ~z3.background = Color.white;
2286                                         ~z28.background = Color.green; ~z4.background = Color.green;
2287                                         ~z29.background = Color.white; ~z5.background = Color.white;
2288                                         ~z30.background = Color.white; ~z6.background = Color.white;
2289                                         ~z31.background = Color.white; ~z7.background = Color.white;
2290                                 }
2291                                 {button.value == 4}{
2292                                         ~z25.background = Color.white; ~z1.background = Color.white;
2293                                         ~z26.background = Color.white; ~z2.background = Color.white;
2294                                         ~z27.background = Color.white; ~z3.background = Color.white;
2295                                         ~z28.background = Color.white; ~z4.background = Color.white;
2296                                         ~z29.background = Color.green; ~z5.background = Color.green;
2297                                         ~z30.background = Color.white; ~z6.background = Color.white;
2298                                         ~z31.background = Color.white; ~z7.background = Color.white;
2299                                 }
2300                                 {button.value == 5}{
2301                                         ~z25.background = Color.white; ~z1.background = Color.white;
2302                                         ~z26.background = Color.white; ~z2.background = Color.white;
2303                                         ~z27.background = Color.white; ~z3.background = Color.white;
2304                                         ~z28.background = Color.white; ~z4.background = Color.white;
2305                                         ~z29.background = Color.white; ~z5.background = Color.white;
2306                                         ~z30.background = Color.green; ~z6.background = Color.green;
2307                                         ~z31.background = Color.white; ~z7.background = Color.white;
2308                                 }
2309                                 {button.value == 6}{
2310                                         ~z25.background = Color.white; ~z1.background = Color.white;
2311                                         ~z26.background = Color.white; ~z2.background = Color.white;
2312                                         ~z27.background = Color.white; ~z3.background = Color.white;
2313                                         ~z28.background = Color.white; ~z4.background = Color.white;
2314                                         ~z29.background = Color.white; ~z5.background = Color.white;
2315                                         ~z30.background = Color.white; ~z6.background = Color.white;
2316                                         ~z31.background = Color.green; ~z7.background = Color.green;
2317                                 }
2318
2319                         });
2320
2321                         w.view.keyDownAction = { arg view, char, modifiers, unicode, keycode;
2322                                 [char, modifiers, unicode, keycode];
2323
2324                                 if(unicode == ~c_unicode, {
2325                                         case
2326                                         {b.value == 0}{b.valueAction = 1}
2327                                         {b.value == 1}{b.valueAction = 0};
2328                                 });
2329                                 if(unicode == ~s_unicode, {
2330                                         case
2331                                         {b3.value == 0}{b3.valueAction = 1}
2332                                         {b3.value == 1}{b3.valueAction = 0};
2333                                 });
2334                                 if(unicode == ~spacebar_unicode, {
2335                                         case
2336                                         {b4.value == 0}{b4.valueAction = 1}
2337                                         {b4.value == 1}{b4.valueAction = 0};
2338                                 });
2339                                 if(unicode == ~t_unicode, {
2340                                         case
2341                                         {~ts.value == 0}{~ts.valueAction = 1}
2342                                         {~ts.value == 1}{~ts.valueAction = 0};
2343                                 });
2344                                 if(unicode == ~r_unicode, {
2345                                         case
2346                                         {~rviewbutton.value == 0}{~rviewbutton.valueAction = 1}
2347                                         {~rviewbutton.value == 1}{~rviewbutton.valueAction = 0};
2348                                 });
2349                                 if(unicode == ~u_unicode, {
2350                                         case
2351                                         {unmuteall.value == 0}{unmuteall.valueAction = 1}
2352                                         {unmuteall.value == 1}{unmuteall.valueAction = 0};
2353                                 });
2354                                 if(unicode == ~m_unicode, {
2355                                         case
2356                                         {muteall.value == 0}{muteall.valueAction = 1}
2357                                         {muteall.value == 1}{muteall.valueAction = 0};
2358                                 });
2359
2360                                 if(unicode == ~escape_unicode, {w.minimize;});
2361
2362                                 /*~bfreqv = ~freqmap.at(34);
2363                                 if((~bfreq.value == 1) and: ((keycode == ~leftarrow_keycode) or: (unicode == ~j_unicode)), {~bfreqtext.string = ~freqmap.at(~bfreqv = ~bfreqv-1).asString;}, {nil});
2364                                 if((~bfreq.value == 1) and: ((keycode == ~rightarrow_keycode) or: (unicode == ~l_unicode)), {~bfreqtext.string = ~freqmap.at(~bfreqv = ~bfreqv+1).asString;}, {nil});
2365                                 */
2366                                 case
2367                                 {unicode == ~one_unicode}{keycodeb.valueAction_(0)}
2368                                 {unicode == ~two_unicode}{keycodeb.valueAction_(1)}
2369                                 {unicode == ~three_unicode}{keycodeb.valueAction_(2)}
2370                                 {unicode == ~four_unicode}{keycodeb.valueAction_(3)}
2371                                 {unicode == ~five_unicode}{keycodeb.valueAction_(4)}
2372                                 {unicode == ~six_unicode}{keycodeb.valueAction_(5)}
2373                                 {unicode == ~seven_unicode}{keycodeb.valueAction_(6)}
2374                                 {(keycode == ~uparrow_keycode) or: (unicode == ~i_unicode)}{keycodeb.valueAction_(keycodeb.value-1)}
2375                                 {(keycode == ~downarrow_keycode) or: (unicode == ~k_unicode)}{keycodeb.valueAction_(keycodeb.value+1)};
2376
2377                                 if((~f1 >= ~freqmap.at(127)), {~freqmap.at(127)},
2378                                         {if((keycodeb.value == 0) and: ((keycode == ~rightarrow_keycode) or: (unicode == ~l_unicode)), {
2379                                                 ~freqmapval1 = ~f1.cpsmidi.round;
2380                                                 case
2381                                                 {~la.isRunning == true}{
2382                                                         ~la.set(\dur, ~f1 = ~freqmap.at(~freqmapval1 = ~freqmapval1.value+1));
2383                                                 }
2384                                                 {~la1.isRunning == true}{
2385                                                         ~la1.set(\dur, ~f1 = ~freqmap.at(~freqmapval1 = ~freqmapval1.value+1));
2386                                                 };
2387                                                 if((~f1 > ~outmaxa) or: (~f1 < ~outmina), {~z25.close;~z1.close;~z25 = (CompositeView(w, Rect((~f1.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+10, ~nw, 2)).background = Color.white;);}, {~z1.close;~z25.close;~z1 = (CompositeView(w, Rect((~f1.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+10, ~nw, 2)).background = Color.white;);});
2388                                                 ~z25.background = Color.green; ~z1.background = Color.green;
2389                                                 ~z26.background = Color.white; ~z2.background = Color.white;
2390                                                 ~z27.background = Color.white; ~z3.background = Color.white;
2391                                                 ~z28.background = Color.white; ~z4.background = Color.white;
2392                                                 ~z29.background = Color.white; ~z5.background = Color.white;
2393                                                 ~z30.background = Color.white; ~z6.background = Color.white;
2394                                                 ~z31.background = Color.white; ~z7.background = Color.white;
2395                                 });});
2396                                 if((~f1 <= ~freqmap.at(0)), {~freqmap.at(0)},
2397                                         {if((keycodeb.value == 0) and: ((keycode == ~leftarrow_keycode) or: (unicode == ~j_unicode)), {
2398                                                 ~freqmapval1 = ~f1.cpsmidi.round;
2399                                                 case
2400                                                 {~la.isRunning == true}{
2401                                                         ~la.set(\dur, ~f1 = ~freqmap.at(~freqmapval1 = ~freqmapval1.value-1));
2402                                                 }
2403                                                 {~la1.isRunning == true}{
2404                                                         ~la1.set(\dur, ~f1 = ~freqmap.at(~freqmapval1 = ~freqmapval1.value-1));
2405                                                 };
2406                                                 if((~f1 > ~outmaxa) or: (~f1 < ~outmina), {~z25.close;~z1.close;~z25 = (CompositeView(w, Rect((~f1.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+10, ~nw, 2)).background = Color.white;);}, {~z1.close;~z25.close;~z1 = (CompositeView(w, Rect((~f1.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+10, ~nw, 2)).background = Color.white;);});
2407                                                 /*if(~f1 <= ~outmin1 and: ~f1 <= ~outmin2 and: ~f1 >= ~outmax1 and: ~f1 >= ~outmax2, {~f1 = 0;*/
2408                                                 ~z25.background = Color.green; ~z1.background = Color.green;
2409                                                 ~z26.background = Color.white; ~z2.background = Color.white;
2410                                                 ~z27.background = Color.white; ~z3.background = Color.white;
2411                                                 ~z28.background = Color.white; ~z4.background = Color.white;
2412                                                 ~z29.background = Color.white; ~z5.background = Color.white;
2413                                                 ~z30.background = Color.white; ~z6.background = Color.white;
2414                                                 ~z31.background = Color.white; ~z7.background = Color.white;
2415                                 });});
2416
2417                                 if((~f2 >= ~freqmap.at(127)), {~freqmap.at(127)},
2418                                         {if((keycodeb.value == 1) and: ((keycode == ~rightarrow_keycode) or: (unicode == ~l_unicode)), {
2419                                                 ~freqmapval2 = ~f2.cpsmidi.round;
2420                                                 case
2421                                                 {~la.isRunning == true}{
2422                                                         ~lb.set(\dur, ~f2 = ~freqmap.at(~freqmapval2 = ~freqmapval2.value+1));
2423                                                 }
2424                                                 {~la1.isRunning == true}{
2425                                                         ~lb1.set(\dur, ~f2 = ~freqmap.at(~freqmapval2 = ~freqmapval2.value+1));
2426                                                 };
2427                                                 if((~f2 > ~outmaxa) or: (~f2 < ~outmina), {~z26.close;~z2.close;~z26 = (CompositeView(w, Rect((~f2.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+20, ~nw, 2)).background = Color.white;);}, {~z2.close;~z26.close;~z2 = (CompositeView(w, Rect((~f2.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+20, ~nw, 2)).background = Color.white;);});
2428                                                 ~z25.background = Color.white; ~z1.background = Color.white;
2429                                                 ~z26.background = Color.green; ~z2.background = Color.green;
2430                                                 ~z27.background = Color.white; ~z3.background = Color.white;
2431                                                 ~z28.background = Color.white; ~z4.background = Color.white;
2432                                                 ~z29.background = Color.white; ~z5.background = Color.white;
2433                                                 ~z30.background = Color.white; ~z6.background = Color.white;
2434                                                 ~z31.background = Color.white; ~z7.background = Color.white;
2435                                 });});
2436                                 if((~f2 <= ~freqmap.at(0)), {~freqmap.at(0)},
2437                                         {if((keycodeb.value == 1) and: ((keycode == ~leftarrow_keycode) or: (unicode == ~j_unicode)), {
2438                                                 ~freqmapval2 = ~f2.cpsmidi.round;
2439                                                 case
2440                                                 {~la.isRunning == true}{
2441                                                         ~lb.set(\dur, ~f2 = ~freqmap.at(~freqmapval2 = ~freqmapval2.value-1));
2442                                                 }
2443                                                 {~la1.isRunning == true}{
2444                                                         ~lb1.set(\dur, ~f2 = ~freqmap.at(~freqmapval2 = ~freqmapval2.value-1));
2445                                                 };
2446                                                 if((~f2 > ~outmaxa) or: (~f2 < ~outmina), {~z26.close;~z2.close;~z26 = (CompositeView(w, Rect((~f2.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+20, ~nw, 2)).background = Color.white;);}, {~z2.close;~z26.close;~z2 = (CompositeView(w, Rect((~f2.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+20, ~nw, 2)).background = Color.white;);});
2447                                                 /*if(~f1 <= ~outmin1 and: ~f1 <= ~outmin2 and: ~f1 >= ~outmax1 and: ~f1 >= ~outmax2, {~f1 = 0;*/
2448                                                 ~z25.background = Color.white; ~z1.background = Color.white;
2449                                                 ~z26.background = Color.green; ~z2.background = Color.green;
2450                                                 ~z27.background = Color.white; ~z3.background = Color.white;
2451                                                 ~z28.background = Color.white; ~z4.background = Color.white;
2452                                                 ~z29.background = Color.white; ~z5.background = Color.white;
2453                                                 ~z30.background = Color.white; ~z6.background = Color.white;
2454                                                 ~z31.background = Color.white; ~z7.background = Color.white;
2455                                 });});
2456
2457                                 if((~f3 >= ~freqmap.at(127)), {~freqmap.at(127)},
2458                                         {if((keycodeb.value == 2) and: ((keycode == ~rightarrow_keycode) or: (unicode == ~l_unicode)), {
2459                                                 ~freqmapval3 = ~f3.cpsmidi.round;
2460                                                 case
2461                                                 {~la.isRunning == true}{
2462                                                         ~lc.set(\dur, ~f3 = ~freqmap.at(~freqmapval3 = ~freqmapval3.value+1));
2463                                                 }
2464                                                 {~la1.isRunning == true}{
2465                                                         ~lc1.set(\dur, ~f3 = ~freqmap.at(~freqmapval3 = ~freqmapval3.value+1));
2466                                                 };
2467                                                 if((~f3 > ~outmaxa) or: (~f3 < ~outmina), {~z27.close;~z3.close;~z27 = (CompositeView(w, Rect((~f3.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+30, ~nw, 2)).background = Color.white;);}, {~z3.close;~z27.close;~z3 = (CompositeView(w, Rect((~f3.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+30, ~nw, 2)).background = Color.white;);});
2468                                                 ~z25.background = Color.white; ~z1.background = Color.white;
2469                                                 ~z26.background = Color.white; ~z2.background = Color.white;
2470                                                 ~z27.background = Color.green; ~z3.background = Color.green;
2471                                                 ~z28.background = Color.white; ~z4.background = Color.white;
2472                                                 ~z29.background = Color.white; ~z5.background = Color.white;
2473                                                 ~z30.background = Color.white; ~z6.background = Color.white;
2474                                                 ~z31.background = Color.white; ~z7.background = Color.white;
2475                                 });});
2476                                 if((~f3 <= ~freqmap.at(0)), {~freqmap.at(0)},
2477                                         {if((keycodeb.value == 2) and: ((keycode == ~leftarrow_keycode) or: (unicode == ~j_unicode)), {
2478                                                 ~freqmapval3 = ~f3.cpsmidi.round;
2479                                                 case
2480                                                 {~la.isRunning == true}{
2481                                                         ~lc.set(\dur, ~f3 = ~freqmap.at(~freqmapval3 = ~freqmapval3.value-1));
2482                                                 }
2483                                                 {~la1.isRunning == true}{
2484                                                         ~lc1.set(\dur, ~f3 = ~freqmap.at(~freqmapval3 = ~freqmapval3.value-1));
2485                                                 };
2486                                                 if((~f3 > ~outmaxa) or: (~f3 < ~outmina), {~z27.close;~z3.close;~z27 = (CompositeView(w, Rect((~f3.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+30, ~nw, 2)).background = Color.white;);}, {~z3.close;~z27.close;~z3 = (CompositeView(w, Rect((~f3.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+30, ~nw, 2)).background = Color.white;);});
2487                                                 /*if(~f1 <= ~outmin1 and: ~f1 <= ~outmin2 and: ~f1 >= ~outmax1 and: ~f1 >= ~outmax2, {~f1 = 0;*/
2488                                                 ~z25.background = Color.white; ~z1.background = Color.white;
2489                                                 ~z26.background = Color.white; ~z2.background = Color.white;
2490                                                 ~z27.background = Color.green; ~z3.background = Color.green;
2491                                                 ~z28.background = Color.white; ~z4.background = Color.white;
2492                                                 ~z29.background = Color.white; ~z5.background = Color.white;
2493                                                 ~z30.background = Color.white; ~z6.background = Color.white;
2494                                                 ~z31.background = Color.white; ~z7.background = Color.white;
2495                                 });});
2496
2497                                 if((~f4 >= ~freqmap.at(127)), {~freqmap.at(127)},
2498                                         {if((keycodeb.value == 3) and: ((keycode == ~rightarrow_keycode) or: (unicode == ~l_unicode)), {
2499                                                 ~freqmapval4 = ~f4.cpsmidi.round;
2500                                                 case
2501                                                 {~la.isRunning == true}{
2502                                                         ~ld.set(\dur, ~f4 = ~freqmap.at(~freqmapval4 = ~freqmapval4.value+1));
2503                                                 }
2504                                                 {~la1.isRunning == true}{
2505                                                         ~ld1.set(\dur, ~f4 = ~freqmap.at(~freqmapval4 = ~freqmapval4.value+1));
2506                                                 };
2507                                                 if((~f4 > ~outmaxa) or: (~f4 < ~outmina), {~z28.close;~z4.close;~z28 = (CompositeView(w, Rect((~f4.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+40, ~nw, 2)).background = Color.white;);}, {~z4.close;~z28.close;~z4 = (CompositeView(w, Rect((~f4.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+40, ~nw, 2)).background = Color.white;);});
2508                                                 ~z25.background = Color.white; ~z1.background = Color.white;
2509                                                 ~z26.background = Color.white; ~z2.background = Color.white;
2510                                                 ~z27.background = Color.white; ~z3.background = Color.white;
2511                                                 ~z28.background = Color.green; ~z4.background = Color.green;
2512                                                 ~z29.background = Color.white; ~z5.background = Color.white;
2513                                                 ~z30.background = Color.white; ~z6.background = Color.white;
2514                                                 ~z31.background = Color.white; ~z7.background = Color.white;
2515                                 });});
2516                                 if((~f4 <= ~freqmap.at(0)), {~freqmap.at(0)},
2517                                         {if((keycodeb.value == 3) and: ((keycode == ~leftarrow_keycode) or: (unicode == ~j_unicode)), {
2518                                                 ~freqmapval4 = ~f4.cpsmidi.round;
2519                                                 case
2520                                                 {~la.isRunning == true}{
2521                                                         ~ld.set(\dur, ~f4 = ~freqmap.at(~freqmapval4 = ~freqmapval4.value-1));
2522                                                 }
2523                                                 {~la1.isRunning == true}{
2524                                                         ~ld1.set(\dur, ~f4 = ~freqmap.at(~freqmapval4 = ~freqmapval4.value-1));
2525                                                 };
2526                                                 if((~f4 > ~outmaxa) or: (~f4 < ~outmina), {~z28.close;~z4.close;~z28 = (CompositeView(w, Rect((~f4.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+40, ~nw, 2)).background = Color.white;);}, {~z4.close;~z28.close;~z4 = (CompositeView(w, Rect((~f4.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+40, ~nw, 2)).background = Color.white;);});
2527                                                 /*if(~f1 <= ~outmin1 and: ~f1 <= ~outmin2 and: ~f1 >= ~outmax1 and: ~f1 >= ~outmax2, {~f1 = 0;*/
2528                                                 ~z25.background = Color.white; ~z1.background = Color.white;
2529                                                 ~z26.background = Color.white; ~z2.background = Color.white;
2530                                                 ~z27.background = Color.white; ~z3.background = Color.white;
2531                                                 ~z28.background = Color.green; ~z4.background = Color.green;
2532                                                 ~z29.background = Color.white; ~z5.background = Color.white;
2533                                                 ~z30.background = Color.white; ~z6.background = Color.white;
2534                                                 ~z31.background = Color.white; ~z7.background = Color.white;
2535                                 });});
2536
2537                                 if((~f5 >= ~freqmap.at(127)), {~freqmap.at(127)},
2538                                         {if((keycodeb.value == 4) and: ((keycode == ~rightarrow_keycode) or: (unicode == ~l_unicode)), {
2539                                                 ~freqmapval5 = ~f5.cpsmidi.round;
2540                                                 case
2541                                                 {~la.isRunning == true}{
2542                                                         ~le.set(\dur, ~f5 = ~freqmap.at(~freqmapval5 = ~freqmapval5.value+1));
2543                                                 }
2544                                                 {~la1.isRunning == true}{
2545                                                         ~le1.set(\dur, ~f5 = ~freqmap.at(~freqmapval5 = ~freqmapval5.value+1));
2546                                                 };
2547                                                 if((~f5 > ~outmaxa) or: (~f5 < ~outmina), {~z29.close;~z5.close;~z29 = (CompositeView(w, Rect((~f5.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+50, ~nw, 2)).background = Color.white;);}, {~z5.close;~z29.close;~z5 = (CompositeView(w, Rect((~f5.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+50, ~nw, 2)).background = Color.white;);});
2548                                                 ~z25.background = Color.white; ~z1.background = Color.white;
2549                                                 ~z26.background = Color.white; ~z2.background = Color.white;
2550                                                 ~z27.background = Color.white; ~z3.background = Color.white;
2551                                                 ~z28.background = Color.white; ~z4.background = Color.white;
2552                                                 ~z29.background = Color.green; ~z5.background = Color.green;
2553                                                 ~z30.background = Color.white; ~z6.background = Color.white;
2554                                                 ~z31.background = Color.white; ~z7.background = Color.white;
2555                                 });});
2556                                 if((~f5 <= ~freqmap.at(0)), {~freqmap.at(0)},
2557                                         {if((keycodeb.value == 4) and: ((keycode == ~leftarrow_keycode) or: (unicode == ~j_unicode)), {
2558                                                 ~freqmapval5 = ~f5.cpsmidi.round;
2559                                                 case
2560                                                 {~la.isRunning == true}{
2561                                                         ~le.set(\dur, ~f5 = ~freqmap.at(~freqmapval5 = ~freqmapval5.value-1));
2562                                                 }
2563                                                 {~la1.isRunning == true}{
2564                                                         ~le1.set(\dur, ~f5 = ~freqmap.at(~freqmapval5 = ~freqmapval5.value-1));
2565                                                 };
2566                                                 if((~f5 > ~outmaxa) or: (~f5 < ~outmina), {~z29.close;~z5.close;~z29 = (CompositeView(w, Rect((~f5.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+50, ~nw, 2)).background = Color.white;);}, {~z5.close;~z29.close;~z5 = (CompositeView(w, Rect((~f5.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+50, ~nw, 2)).background = Color.white;);});
2567                                                 /*if(~f1 <= ~outmin1 and: ~f1 <= ~outmin2 and: ~f1 >= ~outmax1 and: ~f1 >= ~outmax2, {~f1 = 0;*/
2568                                                 ~z25.background = Color.white; ~z1.background = Color.white;
2569                                                 ~z26.background = Color.white; ~z2.background = Color.white;
2570                                                 ~z27.background = Color.white; ~z3.background = Color.white;
2571                                                 ~z28.background = Color.white; ~z4.background = Color.white;
2572                                                 ~z29.background = Color.green; ~z5.background = Color.green;
2573                                                 ~z30.background = Color.white; ~z6.background = Color.white;
2574                                                 ~z31.background = Color.white; ~z7.background = Color.white;
2575                                 });});
2576
2577                                 if((~f6 >= ~freqmap.at(127)), {~freqmap.at(127)},
2578                                         {if((keycodeb.value == 5) and: ((keycode == ~rightarrow_keycode) or: (unicode == ~l_unicode)), {
2579                                                 ~freqmapval6 = ~f6.cpsmidi.round;
2580                                                 case
2581                                                 {~la.isRunning == true}{
2582                                                         ~lf.set(\dur, ~f6 = ~freqmap.at(~freqmapval6 = ~freqmapval6.value+1));
2583                                                 }
2584                                                 {~la1.isRunning == true}{
2585                                                         ~lf1.set(\dur, ~f6 = ~freqmap.at(~freqmapval6 = ~freqmapval6.value+1));
2586                                                 };
2587                                                 if((~f6 > ~outmaxa) or: (~f6 < ~outmina), {~z30.close;~z6.close;~z30 = (CompositeView(w, Rect((~f6.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+60, ~nw, 2)).background = Color.white;);}, {~z6.close;~z30.close;~z6 = (CompositeView(w, Rect((~f6.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+60, ~nw, 2)).background = Color.white;);});
2588                                                 ~z25.background = Color.white; ~z1.background = Color.white;
2589                                                 ~z26.background = Color.white; ~z2.background = Color.white;
2590                                                 ~z27.background = Color.white; ~z3.background = Color.white;
2591                                                 ~z28.background = Color.white; ~z4.background = Color.white;
2592                                                 ~z29.background = Color.white; ~z5.background = Color.white;
2593                                                 ~z30.background = Color.green; ~z6.background = Color.green;
2594                                                 ~z31.background = Color.white; ~z7.background = Color.white;
2595                                 });});
2596                                 if((~f6 <= ~freqmap.at(0)), {~freqmap.at(0)},
2597                                         {if((keycodeb.value == 5) and: ((keycode == ~leftarrow_keycode) or: (unicode == ~j_unicode)), {
2598                                                 ~freqmapval6 = ~f6.cpsmidi.round;
2599                                                 case
2600                                                 {~la.isRunning == true}{
2601                                                         ~lf.set(\dur, ~f6 = ~freqmap.at(~freqmapval6 = ~freqmapval6.value-1));
2602                                                 }
2603                                                 {~la1.isRunning == true}{
2604                                                         ~lf1.set(\dur, ~f6 = ~freqmap.at(~freqmapval6 = ~freqmapval6.value-1));
2605                                                 };
2606                                                 if((~f6 > ~outmaxa) or: (~f6 < ~outmina), {~z30.close;~z6.close;~z30 = (CompositeView(w, Rect((~f6.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+60, ~nw, 2)).background = Color.white;);}, {~z6.close;~z30.close;~z6 = (CompositeView(w, Rect((~f6.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+60, ~nw, 2)).background = Color.white;);});
2607                                                 /*if(~f1 <= ~outmin1 and: ~f1 <= ~outmin2 and: ~f1 >= ~outmax1 and: ~f1 >= ~outmax2, {~f1 = 0;*/
2608                                                 ~z25.background = Color.white; ~z1.background = Color.white;
2609                                                 ~z26.background = Color.white; ~z2.background = Color.white;
2610                                                 ~z27.background = Color.white; ~z3.background = Color.white;
2611                                                 ~z28.background = Color.white; ~z4.background = Color.white;
2612                                                 ~z29.background = Color.white; ~z5.background = Color.white;
2613                                                 ~z30.background = Color.green; ~z6.background = Color.green;
2614                                                 ~z31.background = Color.white; ~z7.background = Color.white;
2615                                 });});
2616
2617                                 if((~f7 >= ~freqmap.at(127)), {~freqmap.at(127)},
2618                                         {if((keycodeb.value == 6) and: ((keycode == ~rightarrow_keycode) or: (unicode == ~l_unicode)), {
2619                                                 ~freqmapval7 = ~f7.cpsmidi.round;
2620                                                 case
2621                                                 {~la.isRunning == true}{
2622                                                         ~lg.set(\dur, ~f7 = ~freqmap.at(~freqmapval7 = ~freqmapval7.value+1));
2623                                                 }
2624                                                 {~la1.isRunning == true}{
2625                                                         ~lg1.set(\dur, ~f7 = ~freqmap.at(~freqmapval7 = ~freqmapval7.value+1));
2626                                                 };
2627                                                 if((~f7 > ~outmaxa) or: (~f7 < ~outmina), {~z31.close;~z7.close;~z31 = (CompositeView(w, Rect((~f7.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+70, ~nw, 2)).background = Color.white;);}, {~z7.close;~z31.close;~z7 = (CompositeView(w, Rect((~f7.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+70, ~nw, 2)).background = Color.white;);});
2628                                                 ~z25.background = Color.white; ~z1.background = Color.white;
2629                                                 ~z26.background = Color.white; ~z2.background = Color.white;
2630                                                 ~z27.background = Color.white; ~z3.background = Color.white;
2631                                                 ~z28.background = Color.white; ~z4.background = Color.white;
2632                                                 ~z29.background = Color.white; ~z5.background = Color.white;
2633                                                 ~z30.background = Color.white; ~z6.background = Color.white;
2634                                                 ~z31.background = Color.green; ~z7.background = Color.green;
2635                                 });});
2636                                 if((~f7 <= ~freqmap.at(0)), {~freqmap.at(0)},
2637                                         {if((keycodeb.value == 6) and: ((keycode == ~leftarrow_keycode) or: (unicode == ~j_unicode)), {
2638                                                 ~freqmapval7 = ~f7.cpsmidi.round;
2639                                                 case
2640                                                 {~la.isRunning == true}{
2641                                                         ~lg.set(\dur, ~f7 = ~freqmap.at(~freqmapval7 = ~freqmapval7.value-1));
2642                                                 }
2643                                                 {~la1.isRunning == true}{
2644                                                         ~lg1.set(\dur, ~f7 = ~freqmap.at(~freqmapval7 = ~freqmapval7.value-1));
2645                                                 };
2646                                                 if((~f7 > ~outmaxa) or: (~f7 < ~outmina), {~z31.close;~z7.close;~z31 = (CompositeView(w, Rect((~f7.explin(~outminb,~outmaxb,0,Window.screenBounds.width)), ~dc1+70, ~nw, 2)).background = Color.white;);}, {~z7.close;~z31.close;~z7 = (CompositeView(w, Rect((~f7.explin(~outmina,~outmaxa,0,Window.screenBounds.width)), ~dc2+70, ~nw, 2)).background = Color.white;);});
2647                                                 /*if(~f1 <= ~outmin1 and: ~f1 <= ~outmin2 and: ~f1 >= ~outmax1 and: ~f1 >= ~outmax2, {~f1 = 0;*/
2648                                                 ~z25.background = Color.white; ~z1.background = Color.white;
2649                                                 ~z26.background = Color.white; ~z2.background = Color.white;
2650                                                 ~z27.background = Color.white; ~z3.background = Color.white;
2651                                                 ~z28.background = Color.white; ~z4.background = Color.white;
2652                                                 ~z29.background = Color.white; ~z5.background = Color.white;
2653                                                 ~z30.background = Color.white; ~z6.background = Color.white;
2654                                                 ~z31.background = Color.green; ~z7.background = Color.green;
2655                                 });});
2656
2657                         };
2658
2659                         if(~rslot1a == nil, {~rslot1a = ~bplaceo1;}); if(~rslot1b == nil, {~rslot1b = ~bplacef1;});
2660                         if(~rslot2 == nil, {~rslot2 = ~bplacef2;});
2661                         if(~rslot3 == nil, {~rslot3 = ~bplacef3;});
2662                         if(~rslot4 == nil, {~rslot4 = ~bplacef4;});
2663                         if(~rslot5 == nil, {~rslot5 = ~bplacef5;});
2664                         if(~rslot6 == nil, {~rslot6 = ~bplacef6;});
2665                         if(~rslot7 == nil, {~rslot7 = ~bplacef7;});
2666                         if(~rslot8 == nil, {~rslot8 = ~bplacef8;});
2667                         if(~rtimeall == nil, {~rtimeall = 8;});
2668                         if(~rtime1 == nil, {~rtime1 = 8;});
2669                         if(~rtime2 == nil, {~rtime2 = 8;});
2670                         if(~rtime3 == nil, {~rtime3 = 8;});
2671                         if(~rtime4 == nil, {~rtime4 = 8;});
2672                         if(~rtime5 == nil, {~rtime5 = 8;});
2673                         if(~rtime6 == nil, {~rtime6 = 8;});
2674                         if(~rtime7 == nil, {~rtime7 = 8;});
2675                         if(~rtime8 == nil, {~rtime8 = 8;});
2676                         if(~rdoall == nil, {~rdoall = 1;});
2677                         if(~rdo1a == nil, {~rdo1a = "o1";}); if(~rdo1b == nil, {~rdo1b = "f1";});
2678                         if(~rdo2 == nil, {~rdo2 = "f2";});
2679                         if(~rdo3 == nil, {~rdo3 = "f3";});
2680                         if(~rdo4 == nil, {~rdo4 = "f4";});
2681                         if(~rdo5 == nil, {~rdo5 = "f5";});
2682                         if(~rdo6 == nil, {~rdo6 = "f6";});
2683                         if(~rdo7 == nil, {~rdo7 = "f7";});
2684                         if(~rdo8 == nil, {~rdo8 = "f8";});
2685
2686                         ~si1aset = {
2687                                 if(~si1a.value == "o1", {~rslot1a = ~bplaceo1; ~rdo1a = ~si1a.value;});
2688                                 if(~si1a.value == "f1", {~rslot1a = ~bplacef1; ~rdo1a = ~si1a.value;});
2689                                 if(~si1a.value == "s1", {~rslot1a = ~bplaces1; ~rdo1a = ~si1a.value;});
2690                                 if(~si1a.value == "o2", {~rslot1a = ~bplaceo2; ~rdo1a = ~si1a.value;});
2691                                 if(~si1a.value == "f2", {~rslot1a = ~bplacef2; ~rdo1a = ~si1a.value;});
2692                                 if(~si1a.value == "s2", {~rslot1a = ~bplaces2; ~rdo1a = ~si1a.value;});
2693                                 if(~si1a.value == "o3", {~rslot1a = ~bplaceo3; ~rdo1a = ~si1a.value;});
2694                                 if(~si1a.value == "f3", {~rslot1a = ~bplacef3; ~rdo1a = ~si1a.value;});
2695                                 if(~si1a.value == "s3", {~rslot1a = ~bplaces3; ~rdo1a = ~si1a.value;});
2696                                 if(~si1a.value == "o4", {~rslot1a = ~bplaceo4; ~rdo1a = ~si1a.value;});
2697                                 if(~si1a.value == "f4", {~rslot1a = ~bplacef4; ~rdo1a = ~si1a.value;});
2698                                 if(~si1a.value == "s4", {~rslot1a = ~bplaces4; ~rdo1a = ~si1a.value;});
2699                                 if(~si1a.value == "o5", {~rslot1a = ~bplaceo5; ~rdo1a = ~si1a.value;});
2700                                 if(~si1a.value == "f5", {~rslot1a = ~bplacef5; ~rdo1a = ~si1a.value;});
2701                                 if(~si1a.value == "s5", {~rslot1a = ~bplaces5; ~rdo1a = ~si1a.value;});
2702                                 if(~si1a.value == "o6", {~rslot1a = ~bplaceo6; ~rdo1a = ~si1a.value;});
2703                                 if(~si1a.value == "f6", {~rslot1a = ~bplacef6; ~rdo1a = ~si1a.value;});
2704                                 if(~si1a.value == "s6", {~rslot1a = ~bplaces6; ~rdo1a = ~si1a.value;});
2705                                 if(~si1a.value == "o7", {~rslot1a = ~bplaceo7; ~rdo1a = ~si1a.value;});
2706                                 if(~si1a.value == "f7", {~rslot1a = ~bplacef7; ~rdo1a = ~si1a.value;});
2707                                 if(~si1a.value == "s7", {~rslot1a = ~bplaces7; ~rdo1a = ~si1a.value;});
2708                                 if(~si1a.value == "o8", {~rslot1a = ~bplaceo8; ~rdo1a = ~si1a.value;});
2709                                 if(~si1a.value == "f8", {~rslot1a = ~bplacef8; ~rdo1a = ~si1a.value;});
2710                                 if(~si1a.value == "s8", {~rslot1a = ~bplaces8; ~rdo1a = ~si1a.value;});
2711                         };
2712                         ~si1bset = {
2713                                 if(~si1b.value == "o1", {~rslot1b = ~bplaceo1; ~rdo1b = ~si1b.value;});
2714                                 if(~si1b.value == "f1", {~rslot1b = ~bplacef1; ~rdo1b = ~si1b.value;});
2715                                 if(~si1b.value == "s1", {~rslot1b = ~bplaces1; ~rdo1b = ~si1b.value;});
2716                                 if(~si1b.value == "o2", {~rslot1b = ~bplaceo2; ~rdo1b = ~si1b.value;});
2717                                 if(~si1b.value == "f2", {~rslot1b = ~bplacef2; ~rdo1b = ~si1b.value;});
2718                                 if(~si1b.value == "s2", {~rslot1b = ~bplaces2; ~rdo1b = ~si1b.value;});
2719                                 if(~si1b.value == "o3", {~rslot1b = ~bplaceo3; ~rdo1b = ~si1b.value;});
2720                                 if(~si1b.value == "f3", {~rslot1b = ~bplacef3; ~rdo1b = ~si1b.value;});
2721                                 if(~si1b.value == "s3", {~rslot1b = ~bplaces3; ~rdo1b = ~si1b.value;});
2722                                 if(~si1b.value == "o4", {~rslot1b = ~bplaceo4; ~rdo1b = ~si1b.value;});
2723                                 if(~si1b.value == "f4", {~rslot1b = ~bplacef4; ~rdo1b = ~si1b.value;});
2724                                 if(~si1b.value == "s4", {~rslot1b = ~bplaces4; ~rdo1b = ~si1b.value;});
2725                                 if(~si1b.value == "o5", {~rslot1b = ~bplaceo5; ~rdo1b = ~si1b.value;});
2726                                 if(~si1b.value == "f5", {~rslot1b = ~bplacef5; ~rdo1b = ~si1b.value;});
2727                                 if(~si1b.value == "s5", {~rslot1b = ~bplaces5; ~rdo1b = ~si1b.value;});
2728                                 if(~si1b.value == "o6", {~rslot1b = ~bplaceo6; ~rdo1b = ~si1b.value;});
2729                                 if(~si1b.value == "f6", {~rslot1b = ~bplacef6; ~rdo1b = ~si1b.value;});
2730                                 if(~si1b.value == "s6", {~rslot1b = ~bplaces6; ~rdo1b = ~si1b.value;});
2731                                 if(~si1b.value == "o7", {~rslot1b = ~bplaceo7; ~rdo1b = ~si1b.value;});
2732                                 if(~si1b.value == "f7", {~rslot1b = ~bplacef7; ~rdo1b = ~si1b.value;});
2733                                 if(~si1b.value == "s7", {~rslot1b = ~bplaces7; ~rdo1b = ~si1b.value;});
2734                                 if(~si1b.value == "o8", {~rslot1b = ~bplaceo8; ~rdo1b = ~si1b.value;});
2735                                 if(~si1b.value == "f8", {~rslot1b = ~bplacef8; ~rdo1b = ~si1b.value;});
2736                                 if(~si1b.value == "s8", {~rslot1b = ~bplaces8; ~rdo1b = ~si1b.value;});
2737                         };
2738                         ~si2set = {
2739                                 if(~si2.value == "o1", {~rslot2 = ~bplaceo1; ~rdo2 = ~si2.value;});
2740                                 if(~si2.value == "f1", {~rslot2 = ~bplacef1; ~rdo2 = ~si2.value;});
2741                                 if(~si2.value == "s1", {~rslot2 = ~bplaces1; ~rdo2 = ~si2.value;});
2742                                 if(~si2.value == "o2", {~rslot2 = ~bplaceo2; ~rdo2 = ~si2.value;});
2743                                 if(~si2.value == "f2", {~rslot2 = ~bplacef2; ~rdo2 = ~si2.value;});
2744                                 if(~si2.value == "s2", {~rslot2 = ~bplaces2; ~rdo2 = ~si2.value;});
2745                                 if(~si2.value == "o3", {~rslot2 = ~bplaceo3; ~rdo2 = ~si2.value;});
2746                                 if(~si2.value == "f3", {~rslot2 = ~bplacef3; ~rdo2 = ~si2.value;});
2747                                 if(~si2.value == "s3", {~rslot2 = ~bplaces3; ~rdo2 = ~si2.value;});
2748                                 if(~si2.value == "o4", {~rslot2 = ~bplaceo4; ~rdo2 = ~si2.value;});
2749                                 if(~si2.value == "f4", {~rslot2 = ~bplacef4; ~rdo2 = ~si2.value;});
2750                                 if(~si2.value == "s4", {~rslot2 = ~bplaces4; ~rdo2 = ~si2.value;});
2751                                 if(~si2.value == "o5", {~rslot2 = ~bplaceo5; ~rdo2 = ~si2.value;});
2752                                 if(~si2.value == "f5", {~rslot2 = ~bplacef5; ~rdo2 = ~si2.value;});
2753                                 if(~si2.value == "s5", {~rslot2 = ~bplaces5; ~rdo2 = ~si2.value;});
2754                                 if(~si2.value == "o6", {~rslot2 = ~bplaceo6; ~rdo2 = ~si2.value;});
2755                                 if(~si2.value == "f6", {~rslot2 = ~bplacef6; ~rdo2 = ~si2.value;});
2756                                 if(~si2.value == "s6", {~rslot2 = ~bplaces6; ~rdo2 = ~si2.value;});
2757                                 if(~si2.value == "o7", {~rslot2 = ~bplaceo7; ~rdo2 = ~si2.value;});
2758                                 if(~si2.value == "f7", {~rslot2 = ~bplacef7; ~rdo2 = ~si2.value;});
2759                                 if(~si2.value == "s7", {~rslot2 = ~bplaces7; ~rdo2 = ~si2.value;});
2760                                 if(~si2.value == "o8", {~rslot2 = ~bplaceo8; ~rdo2 = ~si2.value;});
2761                                 if(~si2.value == "f8", {~rslot2 = ~bplacef8; ~rdo2 = ~si2.value;});
2762                                 if(~si2.value == "s8", {~rslot2 = ~bplaces8; ~rdo2 = ~si2.value;});
2763                         };
2764                         ~si3set = {
2765                                 if(~si3.value == "o1", {~rslot3 = ~bplaceo1; ~rdo3 = ~si3.value;});
2766                                 if(~si3.value == "f1", {~rslot3 = ~bplacef1; ~rdo3 = ~si3.value;});
2767                                 if(~si3.value == "s1", {~rslot3 = ~bplaces1; ~rdo3 = ~si3.value;});
2768                                 if(~si3.value == "o2", {~rslot3 = ~bplaceo2; ~rdo3 = ~si3.value;});
2769                                 if(~si3.value == "f2", {~rslot3 = ~bplacef2; ~rdo3 = ~si3.value;});
2770                                 if(~si3.value == "s2", {~rslot3 = ~bplaces2; ~rdo3 = ~si3.value;});
2771                                 if(~si3.value == "o3", {~rslot3 = ~bplaceo3; ~rdo3 = ~si3.value;});
2772                                 if(~si3.value == "f3", {~rslot3 = ~bplacef3; ~rdo3 = ~si3.value;});
2773                                 if(~si3.value == "s3", {~rslot3 = ~bplaces3; ~rdo3 = ~si3.value;});
2774                                 if(~si3.value == "o4", {~rslot3 = ~bplaceo4; ~rdo3 = ~si3.value;});
2775                                 if(~si3.value == "f4", {~rslot3 = ~bplacef4; ~rdo3 = ~si3.value;});
2776                                 if(~si3.value == "s4", {~rslot3 = ~bplaces4; ~rdo3 = ~si3.value;});
2777                                 if(~si3.value == "o5", {~rslot3 = ~bplaceo5; ~rdo3 = ~si3.value;});
2778                                 if(~si3.value == "f5", {~rslot3 = ~bplacef5; ~rdo3 = ~si3.value;});
2779                                 if(~si3.value == "s5", {~rslot3 = ~bplaces5; ~rdo3 = ~si3.value;});
2780                                 if(~si3.value == "o6", {~rslot3 = ~bplaceo6; ~rdo3 = ~si3.value;});
2781                                 if(~si3.value == "f6", {~rslot3 = ~bplacef6; ~rdo3 = ~si3.value;});
2782                                 if(~si3.value == "s6", {~rslot3 = ~bplaces6; ~rdo3 = ~si3.value;});
2783                                 if(~si3.value == "o7", {~rslot3 = ~bplaceo7; ~rdo3 = ~si3.value;});
2784                                 if(~si3.value == "f7", {~rslot3 = ~bplacef7; ~rdo3 = ~si3.value;});
2785                                 if(~si3.value == "s7", {~rslot3 = ~bplaces7; ~rdo3 = ~si3.value;});
2786                                 if(~si3.value == "o8", {~rslot3 = ~bplaceo8; ~rdo3 = ~si3.value;});
2787                                 if(~si3.value == "f8", {~rslot3 = ~bplacef8; ~rdo3 = ~si3.value;});
2788                                 if(~si3.value == "s8", {~rslot3 = ~bplaces8; ~rdo3 = ~si3.value;});
2789                         };
2790                         ~si4set = {
2791                                 if(~si4.value == "o1", {~rslot4 = ~bplaceo1; ~rdo4 = ~si4.value;});
2792                                 if(~si4.value == "f1", {~rslot4 = ~bplacef1; ~rdo4 = ~si4.value;});
2793                                 if(~si4.value == "s1", {~rslot4 = ~bplaces1; ~rdo4 = ~si4.value;});
2794                                 if(~si4.value == "o2", {~rslot4 = ~bplaceo2; ~rdo4 = ~si4.value;});
2795                                 if(~si4.value == "f2", {~rslot4 = ~bplacef2; ~rdo4 = ~si4.value;});
2796                                 if(~si4.value == "s2", {~rslot4 = ~bplaces2; ~rdo4 = ~si4.value;});
2797                                 if(~si4.value == "o3", {~rslot4 = ~bplaceo3; ~rdo4 = ~si4.value;});
2798                                 if(~si4.value == "f3", {~rslot4 = ~bplacef3; ~rdo4 = ~si4.value;});
2799                                 if(~si4.value == "s3", {~rslot4 = ~bplaces3; ~rdo4 = ~si4.value;});
2800                                 if(~si4.value == "o4", {~rslot4 = ~bplaceo4; ~rdo4 = ~si4.value;});
2801                                 if(~si4.value == "f4", {~rslot4 = ~bplacef4; ~rdo4 = ~si4.value;});
2802                                 if(~si4.value == "s4", {~rslot4 = ~bplaces4; ~rdo4 = ~si4.value;});
2803                                 if(~si4.value == "o5", {~rslot4 = ~bplaceo5; ~rdo4 = ~si4.value;});
2804                                 if(~si4.value == "f5", {~rslot4 = ~bplacef5; ~rdo4 = ~si4.value;});
2805                                 if(~si4.value == "s5", {~rslot4 = ~bplaces5; ~rdo4 = ~si4.value;});
2806                                 if(~si4.value == "o6", {~rslot4 = ~bplaceo6; ~rdo4 = ~si4.value;});
2807                                 if(~si4.value == "f6", {~rslot4 = ~bplacef6; ~rdo4 = ~si4.value;});
2808                                 if(~si4.value == "s6", {~rslot4 = ~bplaces6; ~rdo4 = ~si4.value;});
2809                                 if(~si4.value == "o7", {~rslot4 = ~bplaceo7; ~rdo4 = ~si4.value;});
2810                                 if(~si4.value == "f7", {~rslot4 = ~bplacef7; ~rdo4 = ~si4.value;});
2811                                 if(~si4.value == "s7", {~rslot4 = ~bplaces7; ~rdo4 = ~si4.value;});
2812                                 if(~si4.value == "o8", {~rslot4 = ~bplaceo8; ~rdo4 = ~si4.value;});
2813                                 if(~si4.value == "f8", {~rslot4 = ~bplacef8; ~rdo4 = ~si4.value;});
2814                                 if(~si4.value == "s8", {~rslot4 = ~bplaces8; ~rdo4 = ~si4.value;});
2815                         };
2816                         ~si5set = {
2817                                 if(~si5.value == "o1", {~rslot5 = ~bplaceo1; ~rdo5 = ~si5.value;});
2818                                 if(~si5.value == "f1", {~rslot5 = ~bplacef1; ~rdo5 = ~si5.value;});
2819                                 if(~si5.value == "s1", {~rslot5 = ~bplaces1; ~rdo5 = ~si5.value;});
2820                                 if(~si5.value == "o2", {~rslot5 = ~bplaceo2; ~rdo5 = ~si5.value;});
2821                                 if(~si5.value == "f2", {~rslot5 = ~bplacef2; ~rdo5 = ~si5.value;});
2822                                 if(~si5.value == "s2", {~rslot5 = ~bplaces2; ~rdo5 = ~si5.value;});
2823                                 if(~si5.value == "o3", {~rslot5 = ~bplaceo3; ~rdo5 = ~si5.value;});
2824                                 if(~si5.value == "f3", {~rslot5 = ~bplacef3; ~rdo5 = ~si5.value;});
2825                                 if(~si5.value == "s3", {~rslot5 = ~bplaces3; ~rdo5 = ~si5.value;});
2826                                 if(~si5.value == "o4", {~rslot5 = ~bplaceo4; ~rdo5 = ~si5.value;});
2827                                 if(~si5.value == "f4", {~rslot5 = ~bplacef4; ~rdo5 = ~si5.value;});
2828                                 if(~si5.value == "s4", {~rslot5 = ~bplaces4; ~rdo5 = ~si5.value;});
2829                                 if(~si5.value == "o5", {~rslot5 = ~bplaceo5; ~rdo5 = ~si5.value;});
2830                                 if(~si5.value == "f5", {~rslot5 = ~bplacef5; ~rdo5 = ~si5.value;});
2831                                 if(~si5.value == "s5", {~rslot5 = ~bplaces5; ~rdo5 = ~si5.value;});
2832                                 if(~si5.value == "o6", {~rslot5 = ~bplaceo6; ~rdo5 = ~si5.value;});
2833                                 if(~si5.value == "f6", {~rslot5 = ~bplacef6; ~rdo5 = ~si5.value;});
2834                                 if(~si5.value == "s6", {~rslot5 = ~bplaces6; ~rdo5 = ~si5.value;});
2835                                 if(~si5.value == "o7", {~rslot5 = ~bplaceo7; ~rdo5 = ~si5.value;});
2836                                 if(~si5.value == "f7", {~rslot5 = ~bplacef7; ~rdo5 = ~si5.value;});
2837                                 if(~si5.value == "s7", {~rslot5 = ~bplaces7; ~rdo5 = ~si5.value;});
2838                                 if(~si5.value == "o8", {~rslot5 = ~bplaceo8; ~rdo5 = ~si5.value;});
2839                                 if(~si5.value == "f8", {~rslot5 = ~bplacef8; ~rdo5 = ~si5.value;});
2840                                 if(~si5.value == "s8", {~rslot5 = ~bplaces8; ~rdo5 = ~si5.value;});
2841                         };
2842                         ~si6set = {
2843                                 if(~si6.value == "o1", {~rslot6 = ~bplaceo1; ~rdo6 = ~si6.value;});
2844                                 if(~si6.value == "f1", {~rslot6 = ~bplacef1; ~rdo6 = ~si6.value;});
2845                                 if(~si6.value == "s1", {~rslot6 = ~bplaces1; ~rdo6 = ~si6.value;});
2846                                 if(~si6.value == "o2", {~rslot6 = ~bplaceo2; ~rdo6 = ~si6.value;});
2847                                 if(~si6.value == "f2", {~rslot6 = ~bplacef2; ~rdo6 = ~si6.value;});
2848                                 if(~si6.value == "s2", {~rslot6 = ~bplaces2; ~rdo6 = ~si6.value;});
2849                                 if(~si6.value == "o3", {~rslot6 = ~bplaceo3; ~rdo6 = ~si6.value;});
2850                                 if(~si6.value == "f3", {~rslot6 = ~bplacef3; ~rdo6 = ~si6.value;});
2851                                 if(~si6.value == "s3", {~rslot6 = ~bplaces3; ~rdo6 = ~si6.value;});
2852                                 if(~si6.value == "o4", {~rslot6 = ~bplaceo4; ~rdo6 = ~si6.value;});
2853                                 if(~si6.value == "f4", {~rslot6 = ~bplacef4; ~rdo6 = ~si6.value;});
2854                                 if(~si6.value == "s4", {~rslot6 = ~bplaces4; ~rdo6 = ~si6.value;});
2855                                 if(~si6.value == "o5", {~rslot6 = ~bplaceo5; ~rdo6 = ~si6.value;});
2856                                 if(~si6.value == "f5", {~rslot6 = ~bplacef5; ~rdo6 = ~si6.value;});
2857                                 if(~si6.value == "s5", {~rslot6 = ~bplaces5; ~rdo6 = ~si6.value;});
2858                                 if(~si6.value == "o6", {~rslot6 = ~bplaceo6; ~rdo6 = ~si6.value;});
2859                                 if(~si6.value == "f6", {~rslot6 = ~bplacef6; ~rdo6 = ~si6.value;});
2860                                 if(~si6.value == "s6", {~rslot6 = ~bplaces6; ~rdo6 = ~si6.value;});
2861                                 if(~si6.value == "o7", {~rslot6 = ~bplaceo7; ~rdo6 = ~si6.value;});
2862                                 if(~si6.value == "f7", {~rslot6 = ~bplacef7; ~rdo6 = ~si6.value;});
2863                                 if(~si6.value == "s7", {~rslot6 = ~bplaces7; ~rdo6 = ~si6.value;});
2864                                 if(~si6.value == "o8", {~rslot6 = ~bplaceo8; ~rdo6 = ~si6.value;});
2865                                 if(~si6.value == "f8", {~rslot6 = ~bplacef8; ~rdo6 = ~si6.value;});
2866                                 if(~si6.value == "s8", {~rslot6 = ~bplaces8; ~rdo6 = ~si6.value;});
2867                         };
2868                         ~si7set = {
2869                                 if(~si7.value == "o1", {~rslot7 = ~bplaceo1; ~rdo7 = ~si7.value;});
2870                                 if(~si7.value == "f1", {~rslot7 = ~bplacef1; ~rdo7 = ~si7.value;});
2871                                 if(~si7.value == "s1", {~rslot7 = ~bplaces1; ~rdo7 = ~si7.value;});
2872                                 if(~si7.value == "o2", {~rslot7 = ~bplaceo2; ~rdo7 = ~si7.value;});
2873                                 if(~si7.value == "f2", {~rslot7 = ~bplacef2; ~rdo7 = ~si7.value;});
2874                                 if(~si7.value == "s2", {~rslot7 = ~bplaces2; ~rdo7 = ~si7.value;});
2875                                 if(~si7.value == "o3", {~rslot7 = ~bplaceo3; ~rdo7 = ~si7.value;});
2876                                 if(~si7.value == "f3", {~rslot7 = ~bplacef3; ~rdo7 = ~si7.value;});
2877                                 if(~si7.value == "s3", {~rslot7 = ~bplaces3; ~rdo7 = ~si7.value;});
2878                                 if(~si7.value == "o4", {~rslot7 = ~bplaceo4; ~rdo7 = ~si7.value;});
2879                                 if(~si7.value == "f4", {~rslot7 = ~bplacef4; ~rdo7 = ~si7.value;});
2880                                 if(~si7.value == "s4", {~rslot7 = ~bplaces4; ~rdo7 = ~si7.value;});
2881                                 if(~si7.value == "o5", {~rslot7 = ~bplaceo5; ~rdo7 = ~si7.value;});
2882                                 if(~si7.value == "f5", {~rslot7 = ~bplacef5; ~rdo7 = ~si7.value;});
2883                                 if(~si7.value == "s5", {~rslot7 = ~bplaces5; ~rdo7 = ~si7.value;});
2884                                 if(~si7.value == "o6", {~rslot7 = ~bplaceo6; ~rdo7 = ~si7.value;});
2885                                 if(~si7.value == "f6", {~rslot7 = ~bplacef6; ~rdo7 = ~si7.value;});
2886                                 if(~si7.value == "s6", {~rslot7 = ~bplaces6; ~rdo7 = ~si7.value;});
2887                                 if(~si7.value == "o7", {~rslot7 = ~bplaceo7; ~rdo7 = ~si7.value;});
2888                                 if(~si7.value == "f7", {~rslot7 = ~bplacef7; ~rdo7 = ~si7.value;});
2889                                 if(~si7.value == "s7", {~rslot7 = ~bplaces7; ~rdo7 = ~si7.value;});
2890                                 if(~si7.value == "o8", {~rslot7 = ~bplaceo8; ~rdo7 = ~si7.value;});
2891                                 if(~si7.value == "f8", {~rslot7 = ~bplacef8; ~rdo7 = ~si7.value;});
2892                                 if(~si7.value == "s8", {~rslot7 = ~bplaces8; ~rdo7 = ~si7.value;});
2893                         };
2894                         ~si8set = {
2895                                 if(~si8.value == "o1", {~rslot8 = ~bplaceo1; ~rdo8 = ~si8.value;});
2896                                 if(~si8.value == "f1", {~rslot8 = ~bplacef1; ~rdo8 = ~si8.value;});
2897                                 if(~si8.value == "s1", {~rslot8 = ~bplaces1; ~rdo8 = ~si8.value;});
2898                                 if(~si8.value == "o2", {~rslot8 = ~bplaceo2; ~rdo8 = ~si8.value;});
2899                                 if(~si8.value == "f2", {~rslot8 = ~bplacef2; ~rdo8 = ~si8.value;});
2900                                 if(~si8.value == "s2", {~rslot8 = ~bplaces2; ~rdo8 = ~si8.value;});
2901                                 if(~si8.value == "o3", {~rslot8 = ~bplaceo3; ~rdo8 = ~si8.value;});
2902                                 if(~si8.value == "f3", {~rslot8 = ~bplacef3; ~rdo8 = ~si8.value;});
2903                                 if(~si8.value == "s3", {~rslot8 = ~bplaces3; ~rdo8 = ~si8.value;});
2904                                 if(~si8.value == "o4", {~rslot8 = ~bplaceo4; ~rdo8 = ~si8.value;});
2905                                 if(~si8.value == "f4", {~rslot8 = ~bplacef4; ~rdo8 = ~si8.value;});
2906                                 if(~si8.value == "s4", {~rslot8 = ~bplaces4; ~rdo8 = ~si8.value;});
2907                                 if(~si8.value == "o5", {~rslot8 = ~bplaceo5; ~rdo8 = ~si8.value;});
2908                                 if(~si8.value == "f5", {~rslot8 = ~bplacef5; ~rdo8 = ~si8.value;});
2909                                 if(~si8.value == "s5", {~rslot8 = ~bplaces5; ~rdo8 = ~si8.value;});
2910                                 if(~si8.value == "o6", {~rslot8 = ~bplaceo6; ~rdo8 = ~si8.value;});
2911                                 if(~si8.value == "f6", {~rslot8 = ~bplacef6; ~rdo8 = ~si8.value;});
2912                                 if(~si8.value == "s6", {~rslot8 = ~bplaces6; ~rdo8 = ~si8.value;});
2913                                 if(~si8.value == "o7", {~rslot8 = ~bplaceo7; ~rdo8 = ~si8.value;});
2914                                 if(~si8.value == "f7", {~rslot8 = ~bplacef7; ~rdo8 = ~si8.value;});
2915                                 if(~si8.value == "s7", {~rslot8 = ~bplaces7; ~rdo8 = ~si8.value;});
2916                                 if(~si8.value == "o8", {~rslot8 = ~bplaceo8; ~rdo8 = ~si8.value;});
2917                                 if(~si8.value == "f8", {~rslot8 = ~bplacef8; ~rdo8 = ~si8.value;});
2918                                 if(~si8.value == "s8", {~rslot8 = ~bplaces8; ~rdo8 = ~si8.value;});
2919                         };
2920
2921
2922                         /*if([fp1,fp2,fp3,fp4,fp5,fp6,fp7,fp8,fp9,fp10,fp11,fp12] == [nil,nil,nil,nil,nil,nil,nil,nil,nil,nil,nil,nil], {*/
2923
2924                         /*if([fp1,fp2,fp3,fp4,fp5,fp6,fp7,fp8,fp9,fp10,fp11,fp12] == [nil,nil,nil,nil,nil,nil,nil,nil,nil,nil,nil,nil], {#fp1,fp2,fp3,fp4,fp5,fp6,fp7,fp8,fp9,fp10,fp11,fp12 = [0,0,0,0,0,0,0,0,0,0,0,0];});
2925                         if([fp1b,fp2b,fp3b,fp4b,fp5b,fp6b,fp7b,fp8b,fp9b,fp10b,fp11b,fp12b] == [nil,nil,nil,nil,nil,nil,nil,nil,nil,nil,nil,nil], {#fp1b,fp2b,fp3b,fp4b,fp5b,fp6b,fp7b,fp8b,fp9b,fp10b,fp11b,fp12b = [0,0,0,0,0,0,0,0,0,0,0,0];});
2926                         if([fp1c,fp2c,fp3c,fp4c,fp5c,fp6c,fp7c,fp8c,fp9c,fp10c,fp11c,fp12c] == [nil,nil,nil,nil,nil,nil,nil,nil,nil,nil,nil,nil], {#fp1c,fp2c,fp3c,fp4c,fp5c,fp6c,fp7c,fp8c,fp9c,fp10c,fp11c,fp12c = [0,0,0,0,0,0,0,0,0,0,0,0];});
2927                         if([fp1d,fp2d,fp3d,fp4d,fp5d,fp6d,fp7d,fp8d,fp9d,fp10d,fp11d,fp12d] == [nil,nil,nil,nil,nil,nil,nil,nil,nil,nil,nil,nil], {#fp1d,fp2d,fp3d,fp4d,fp5d,fp6d,fp7d,fp8d,fp9d,fp10d,fp11d,fp12d = [0,0,0,0,0,0,0,0,0,0,0,0];});
2928                         if([fp1e,fp2e,fp3e,fp4e,fp5e,fp6e,fp7e,fp8e,fp9e,fp10e,fp11e,fp12e] == [nil,nil,nil,nil,nil,nil,nil,nil,nil,nil,nil,nil], {#fp1e,fp2e,fp3e,fp4e,fp5e,fp6e,fp7e,fp8e,fp9e,fp10e,fp11e,fp12e = [0,0,0,0,0,0,0,0,0,0,0,0];});
2929                         if([fp1f,fp2f,fp3f,fp4f,fp5f,fp6f,fp7f,fp8f,fp9f,fp10f,fp11f,fp12f] == [nil,nil,nil,nil,nil,nil,nil,nil,nil,nil,nil,nil], {#fp1f,fp2f,fp3f,fp4f,fp5f,fp6f,fp7f,fp8f,fp9f,fp10f,fp11f,fp12f = [0,0,0,0,0,0,0,0,0,0,0,0];});
2930                         if([fp1g,fp2g,fp3g,fp4g,fp5g,fp6g,fp7g,fp8g,fp9g,fp10g,fp11g,fp12g] == [nil,nil,nil,nil,nil,nil,nil,nil,nil,nil,nil,nil], {#fp1g,fp2g,fp3g,fp4g,fp5g,fp6g,fp7g,fp8g,fp9g,fp10g,fp11g,fp12g = [0,0,0,0,0,0,0,0,0,0,0,0];});
2931                         if([fp1h,fp2h,fp3h,fp4h,fp5h,fp6h,fp7h,fp8h,fp9h,fp10h,fp11h,fp12h] == [nil,nil,nil,nil,nil,nil,nil,nil,nil,nil,nil,nil], {#fp1h,fp2h,fp3h,fp4h,fp5h,fp6h,fp7h,fp8h,fp9h,fp10h,fp11h,fp12h = [0,0,0,0,0,0,0,0,0,0,0,0];});
2932                         */
2933
2934                         ~rviewbutton = Button.new(w,Rect(Window.screenBounds.width-20-20,~bpt+69+5-(20/~gm),20,20/1.6180339887499)).states_([["r",Color.white,Color.black],["r",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button;
2935
2936                                 if(button.value == 1, {
2937                                         ({
2938                                                 arg leftdo = 0 , leftdobox = 52, lefttime = leftdobox+widthbox+6, lefttimebox = lefttime+57, top = 0,width=52, height = 16,  widthbox=52, heightbox = 16, inc=0, lw = 0,  uw = 0, numw = 40;
2939                                                 var tall, stall, iall, siall, st1, st2, st3, st4, st5, st6, st7, st8,  t1,t2,t3,t4,t5,t6,t7,t8,i1,i2,i3,i4,i5,i6,i7,i8;
2940                                                 ~rview = View(w, Rect(Window.screenBounds.width-(340+46),Window.screenBounds.height-(340+46/1.6180339887499)-110,340+46,340+46/1.6180339887499)).front;
2941                                                 /*w.view.decorator=FlowLayout(w.view.bounds);
2942                                                 w.view.decorator.gap=2@2;*/
2943
2944                                                 top = 0;
2945
2946                                                 i1 = StaticText(~rview, Rect(leftdo , top=top, width, height)).background_(Color.black).string_("rslot1").stringColor_(Color.white);
2947                                                 i2 = StaticText(~rview, Rect(leftdo , top=top+height, width, height)).background_(Color.black).string_("rslot2").stringColor_(Color.white);
2948                                                 i3 = StaticText(~rview, Rect(leftdo , top=top+height, width, height)).background_(Color.black).string_("rslot3").stringColor_(Color.white);
2949                                                 i4 = StaticText(~rview, Rect(leftdo , top=top+height, width, height)).background_(Color.black).string_("rslot4").stringColor_(Color.white);
2950                                                 i5 = StaticText(~rview, Rect(leftdo , top=top+height, width, height)).background_(Color.black).string_("rslot5").stringColor_(Color.white);
2951                                                 i6 = StaticText(~rview, Rect(leftdo , top=top+height, width, height)).background_(Color.black).string_("rslot6").stringColor_(Color.white);
2952                                                 i7 = StaticText(~rview, Rect(leftdo , top=top+height, width, height)).background_(Color.black).string_("rslot7").stringColor_(Color.white);
2953                                                 i8 = StaticText(~rview, Rect(leftdo , top=top+height, width, height)).background_(Color.black).string_("rslot8").stringColor_(Color.white);
2954
2955                                                 top = 0;
2956
2957                                                 ~si1a=TextField(~rview, Rect(leftdobox , top=top, widthbox/2, heightbox)).background_(Color.black).stringColor_(Color.white).value_(~rdo1a);
2958                                                 ~si1b=TextField(~rview, Rect(leftdobox+(widthbox/2) , top=top, widthbox/2, heightbox)).background_(Color.black).stringColor_(Color.white).value_(~rdo1b);
2959                                                 ~si2=TextField(~rview, Rect(leftdobox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).stringColor_(Color.white).value_(~rdo2);
2960                                                 ~si3=TextField(~rview, Rect(leftdobox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).stringColor_(Color.white).value_(~rdo3);
2961                                                 ~si4=TextField(~rview, Rect(leftdobox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).stringColor_(Color.white).value_(~rdo4);
2962                                                 ~si5=TextField(~rview, Rect(leftdobox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).stringColor_(Color.white).value_(~rdo5);
2963                                                 ~si6=TextField(~rview, Rect(leftdobox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).stringColor_(Color.white).value_(~rdo6);
2964                                                 ~si7=TextField(~rview, Rect(leftdobox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).stringColor_(Color.white).value_(~rdo7);
2965                                                 ~si8=TextField(~rview, Rect(leftdobox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).stringColor_(Color.white).value_(~rdo8);
2966
2967                                                 top = 0;
2968
2969                                                 t1 = StaticText(~rview, Rect(lefttime , top=top, width, height)).background_(Color.black).string_("rtime1").stringColor_(Color.white);
2970                                                 t2 = StaticText(~rview, Rect(lefttime , top=top+height, width, height)).background_(Color.black).string_("rtime2").stringColor_(Color.white);
2971                                                 t3 = StaticText(~rview, Rect(lefttime , top=top+height, width, height)).background_(Color.black).string_("rtime3").stringColor_(Color.white);
2972                                                 t4 = StaticText(~rview, Rect(lefttime , top=top+height, width, height)).background_(Color.black).string_("rtime4").stringColor_(Color.white);
2973                                                 t5 = StaticText(~rview, Rect(lefttime , top=top+height, width, height)).background_(Color.black).string_("rtime5").stringColor_(Color.white);
2974                                                 t6 = StaticText(~rview, Rect(lefttime , top=top+height, width, height)).background_(Color.black).string_("rtime6").stringColor_(Color.white);
2975                                                 t7 = StaticText(~rview, Rect(lefttime , top=top+height, width, height)).background_(Color.black).string_("rtime7").stringColor_(Color.white);
2976                                                 t8 = StaticText(~rview, Rect(lefttime , top=top+height, width, height)).background_(Color.black).string_("rtime8").stringColor_(Color.white);
2977                                                 tall = StaticText(~rview, Rect(lefttime , top=top+height, width, height)).background_(Color.black).string_("all time").stringColor_(Color.white);
2978
2979
2980                                                 top = 0;
2981
2982                                                 st1=NumberBox(~rview, Rect(lefttimebox , top=top, widthbox, heightbox)).background_(Color.black).normalColor_(Color.white;).value_(~rtime1);
2983                                                 st2=NumberBox(~rview, Rect(lefttimebox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).normalColor_(Color.white;).value_(~rtime2);
2984                                                 st3=NumberBox(~rview, Rect(lefttimebox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).normalColor_(Color.white;).value_(~rtime3);
2985                                                 st4=NumberBox(~rview, Rect(lefttimebox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).normalColor_(Color.white;).value_(~rtime4);
2986                                                 st5=NumberBox(~rview, Rect(lefttimebox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).normalColor_(Color.white;).value_(~rtime5);
2987                                                 st6=NumberBox(~rview, Rect(lefttimebox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).normalColor_(Color.white;).value_(~rtime6);
2988                                                 st7=NumberBox(~rview, Rect(lefttimebox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).normalColor_(Color.white;).value_(~rtime7);
2989                                                 st8=NumberBox(~rview, Rect(lefttimebox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).normalColor_(Color.white;).value_(~rtime8);
2990                                                 stall=NumberBox(~rview, Rect(lefttimebox , top=top+heightbox, widthbox, heightbox)).background_(Color.black).normalColor_(Color.white;).value_(~rtimeall);
2991
2992
2993                                                 ~si1a.action_({~si1aset.value});
2994                                                 ~si1b.action_({~si1bset.value});
2995                                                 ~si2.action_({~si2set.value});
2996                                                 ~si3.action_({~si3set.value});
2997                                                 ~si4.action_({~si4set.value});
2998                                                 ~si5.action_({~si5set.value});
2999                                                 ~si6.action_({~si6set.value});
3000                                                 ~si7.action_({~si7set.value});
3001                                                 ~si8.action_({~si8set.value});
3002
3003
3004                                                 stall.action_({arg val;
3005                                                         ~rtimeall = val.value;
3006                                                         ~rtime1 = val.value;
3007                                                         ~rtime2 = val.value;
3008                                                         ~rtime3 = val.value;
3009                                                         ~rtime4 = val.value;
3010                                                         ~rtime5 = val.value;
3011                                                         ~rtime6 = val.value;
3012                                                         ~rtime7 = val.value;
3013                                                         ~rtime8 = val.value;
3014                                                         ~rview.close; ~rviewbutton.valueAction_(1);
3015                                                 });
3016                                                 st1.action_({arg val; ~rtime1 = val.value;});
3017                                                 st2.action_({arg val; ~rtime2 = val.value;});
3018                                                 st3.action_({arg val; ~rtime3 = val.value;});
3019                                                 st4.action_({arg val; ~rtime4 = val.value;});
3020                                                 st5.action_({arg val; ~rtime5 = val.value;});
3021                                                 st6.action_({arg val; ~rtime6 = val.value;});
3022                                                 st7.action_({arg val; ~rtime7 = val.value;});
3023                                                 st8.action_({arg val; ~rtime8 = val.value;});
3024
3025                                                 ~rview.background_(Color.black);
3026
3027                                                 ~routinebutton = Button.new(~rview,Rect(0, top+40, 40, 40/~gm)).states_([["loop",Color.white,Color.black],["stop",Color.white,Color.black]]).action_({arg button;
3028
3029                                                         if(button.value == 1, {
3030
3031                                                                 ~loop = Task({
3032                                                                         1.do({
3033                                                                                 {~rslot1a.valueAction_(0)}.defer;
3034                                                                                 ~rtime1.wait;
3035                                                                                 {~rslot2.valueAction_(0)}.defer;
3036                                                                                 ~rtime2.wait;
3037                                                                                 {~rslot3.valueAction_(0)}.defer;
3038                                                                                 ~rtime3.wait;
3039                                                                                 {~rslot4.valueAction_(0)}.defer;
3040                                                                                 ~rtime4.wait;
3041                                                                                 {~rslot5.valueAction_(0)}.defer;
3042                                                                                 ~rtime5.wait;
3043                                                                                 {~rslot6.valueAction_(0)}.defer;
3044                                                                                 ~rtime6.wait;
3045                                                                                 {~rslot7.valueAction_(0)}.defer;
3046                                                                                 ~rtime7.wait;
3047                                                                                 {~rslot8.valueAction_(0)}.defer;
3048                                                                                 ~rtime8.wait;
3049                                                                         });
3050                                                                         inf.do({
3051                                                                                 {~rslot1b.valueAction_(0)}.defer;
3052                                                                                 ~rtime1.wait;
3053                                                                                 {~rslot2.valueAction_(0)}.defer;
3054                                                                                 ~rtime2.wait;
3055                                                                                 {~rslot3.valueAction_(0)}.defer;
3056                                                                                 ~rtime3.wait;
3057                                                                                 {~rslot4.valueAction_(0)}.defer;
3058                                                                                 ~rtime4.wait;
3059                                                                                 {~rslot5.valueAction_(0)}.defer;
3060                                                                                 ~rtime5.wait;
3061                                                                                 {~rslot6.valueAction_(0)}.defer;
3062                                                                                 ~rtime6.wait;
3063                                                                                 {~rslot7.valueAction_(0)}.defer;
3064                                                                                 ~rtime7.wait;
3065                                                                                 {~rslot8.valueAction_(0)}.defer;
3066                                                                                 ~rtime8.wait;
3067                                                                         });
3068                                                                 }); SystemClock(~loop.start); ~numsynths.stop;}, {
3069
3070                                                                         SystemClock(~loop.stop); SystemClock(~loop.reset); ~synthfree.value; ~pauseroutinebutton.value = 0; ~numsynths.stop; ~numsynthsfunc.value;});
3071                                                 });
3072
3073                                                 ~pauseroutinebutton = Button.new(~rview,Rect(50, top+40, 40, 40/~gm)).states_([["pause",Color.white,Color.black],["loop",Color.white,Color.black]]).action_({arg button;
3074
3075                                                         if(button.value == 1, {SystemClock(~loop.pause); ~synthpause.value;}, {SystemClock(~loop.resume); ~synthflow.value;});
3076                                                 });
3077
3078                                                 ~closeroutinebutton = Button.new(~rview,Rect(220, top+40, 40, 40/~gm)).states_([["close",Color.white,Color.black]]).action_({arg button;
3079
3080                                                         ~rview.close; ~rviewbutton.value = 0;
3081                                                 });
3082
3083                                         }.value);
3084
3085                                         if(~loop.isPlaying == true, {~routinebutton.value = 1;});
3086                                         ~rview.front;
3087                                 }, {~rview.close});
3088                         });
3089
3090                         ~synthmonitor = StaticText(w, Rect(Window.screenBounds.width-14,~bpt+49,18,18/1.6180339887499)).background_(Color.black).stringColor_(Color.white);
3091                         ~synthmonitor.string = if(~currentsynth == nil, {"nil".asString});
3092
3093                         ~synthmonitorfunc = {
3094                                 ~synthmonitor.close;
3095                                 ~synthmonitor = StaticText(w, Rect(Window.screenBounds.width-14,~bpt+49,18,18/1.6180339887499)).background_(Color.black).stringColor_(Color.white);
3096                                 ~synthmonitor.string = ~currentsynth.asString;
3097                                 ~synthmonitor.font = Font(size: 10);
3098                         };
3099
3100                         ~synthmonitorfunc.value;
3101
3102                         info = Button.new(w,Rect(Window.screenBounds.width-20-20,~bpt+69+5,20,20/1.6180339887499)).states_([["i",Color.white,Color.black],["i",Color.white,Color.black]]).action_({arg button;
3103
3104                                 if(button.value == 1, {
3105                                         ~hb = TextView(w, Rect(0,0, Window.screenBounds.width, Window.screenBounds.height-200)).background_(Color.black);
3106                                         (~hb.string =
3107                                                 "(scroll down to see more)"++"\n"++"\n"++"\n"++
3108                                                 "GUI Buttons"++"\n"++"\n"++"\n"++
3109                                                 "synth0/synth1: start/stop synth set"++"\n"++"\n"++
3110                                                 "pause0/pause1: pause/unpause synth set"++"\n"++"\n"++
3111                                                 "copy: copy frequency/note info"++"\n"++"\n"++
3112                                                 "kws/inst: change number of kw(King Wen) sequences per time wave instance. press set to load"++"\n"++"\n"++
3113                                                 "steps/kws: change number of interval steps which occur in each kw sequence. press set to load"++"\n"++"\n"++
3114                                                 "hz frequency: set the base frequency. press set to load"++"\n"++"\n"++
3115                                                 "s1-s8: set/save note positions"++"\n"++"\n"++
3116                                                 "uc-u8: undo changes to set note positions. press set to load"++"\n"++"\n"++
3117                                                 "o1-o8: play set/saved note positions by opening a new synth set"++"\n"++"\n"++
3118                                                 "f1-f8: flow transition to set/saved note positions"++"\n"++"\n"++
3119                                                 "s1-s8: slide transition to set/saved note positions"++"\n"++"\n"++
3120                                                 "tsynth0/tsynth1: tsynth0 to allow timed synth set, then click on any o or f button to time a progression. click on the st button in the bottom right to stop the timer. tsynth1 to dis-allow timed synth set"++"\n"++"\n"++
3121                                                 "rc: start recording"++"\n"++"\n"++
3122                                                 "prc: pause recording"++"\n"++"\n"++
3123                                                 "/rc: stop recording"++"\n"++"\n"++
3124                                                 "m/u: mute/unmute all"++"\n"++"\n"++
3125                                                 "1-7: mute or unmute individual synth"++"\n"++"\n"++
3126                                                 "st: stop synth timer/show timer results"++"\n"++"\n"++
3127                                                 "r: routine/loop function - rslot for synth set, rtime for time between transitions"++"\n"++"\n"++
3128                                                 "s: set slide time/increment"++"\n"++"\n"++
3129                                                 "i: help"++"\n"++"\n"++
3130                                                 "m: minimize window"++"\n"++"\n"++
3131                                                 "c: close window"++"\n"++"\n"++"\n"++
3132                                                 "Keyboard Functions (functionality will vary with device)"++"\n"++"\n"++"\n"++
3133                                                 "s: start/stop synth set"++"\n"++"\n"++
3134                                                 "space bar: pause/unpause synth set"++"\n"++"\n"++
3135                                                 "ctrl-period/cmd-period: free server"++"\n"++"\n"++
3136                                                 "left/right arrow(or J and L): move down/up note"++"\n"++"\n"++
3137                                                 "up/down arrow(or I and K): change synth for left/right arrow note function"++"\n"++"\n"++
3138                                                 "#1-7 on keyboard: choose synth for left/right arrow note function"++"\n"++"\n"++
3139                                                 "r: routine/loop function - rslot for synth set, rtime for time between transitions"++"\n"++"\n"++
3140                                                 "m: mute/unmute all"++"\n"++"\n"++
3141                                                 "c: copy function"++"\n"++"\n"++
3142                                                 "t: timed synth function"++"\n"++"\n"++
3143                                                 "esc: minimize window"
3144                                                 ;
3145                                         );
3146                                         ~hb.stringColor = Color.white;
3147                                         },
3148                                         {~hb.close;});
3149                         });
3150
3151                         n1 = Button.new(w,Rect(Window.screenBounds.width-(Window.screenBounds.width/2)-(60*2),Window.screenBounds.height-88,60,60/1.6180339887499)).states_([["s1",Color.white,Color.black],["1set",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button; if(button.value == 1, {~r1=fp1;~r2=fp2;~r3=fp3;~r4=fp4;~r5=fp5;~r6=fp6;~r7=fp7;~r8=fp8;~r9=fp9;~r10=fp10;~r11=fp11;~r12=fp12; #fp1,fp2,fp3,fp4,fp5,fp6,fp7,fp8,fp9,fp10,fp11,fp12/*,fp13,fp14,fp15,fp16,fp17,fp18,fp19,fp20,fp21,fp22,fp23,fp24*/ = [ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8,~f9,~f10,~f11,~f12 ]; "s"++"\n"++[ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8,~f9,~f10,~f11,~f12 ].asString.postString; ~u1=~f1;~u2=~f2;~u3=~f3;~u4=~f4;~u5=~f5;~u6=~f6;~u7=~f7;~u8=~f8;~u9=~f9;~u10=~f10;~u11=~f11;~u12=~f12; ~si1aset.value;~si1bset.value;}, {nil});});
3152                         n2 = Button.new(w,Rect(Window.screenBounds.width-(Window.screenBounds.width/2)-(60*1),Window.screenBounds.height-88,60,60/1.6180339887499)).states_([["s2",Color.white,Color.black],["2set",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button; if(button.value == 1, {~r1=fp1b;~r2=fp2b;~r3=fp3b;~r4b=fp4b;~r5b=fp5b;~r6b=fp6b;~r7b=fp7b;~r8b=fp8b;~r9b=fp9b;~r10b=fp10b;~r11b=fp11b;~r12b=fp12b; #fp1b,fp2b,fp3b,fp4b,fp5b,fp6b,fp7b,fp8b,fp9b,fp10b,fp11b,fp12b/*,fp13b,fp14b,fp15b,fp16b,fp17b,fp18b,fp19b,fp20b,fp21b,fp22b,fp23b,fp24b*/ = [ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8,~f9,~f10,~f11,~f12 ]; "s"++"\n"++[ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8,~f9,~f10,~f11,~f12 ].asString.postString; ~u1b=~f1;~u2b=~f2;~u3b=~f3;~u4b=~f4;~u5b=~f5;~u6b=~f6;~u7b=~f7;~u8b=~f8;~u9b=~f9;~u10b=~f10;~u11b=~f11;~u12b=~f12; ~si2set.value}, {nil});});
3153                         n3 = Button.new(w,Rect(Window.screenBounds.width-(Window.screenBounds.width/2)+(0),   Window.screenBounds.height-88,60,60/1.6180339887499)).states_([["s3",Color.white,Color.black],["3set",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button; if(button.value == 1, {~r1=fp1c;~r2=fp2c;~r3=fp3c;~r4c=fp4c;~r5c=fp5c;~r6c=fp6c;~r7c=fp7c;~r8c=fp8c;~r9c=fp9c;~r10c=fp10c;~r11c=fp11c;~r12c=fp12c; #fp1c,fp2c,fp3c,fp4c,fp5c,fp6c,fp7c,fp8c,fp9c,fp10c,fp11c,fp12c/*,fp13c,fp14c,fp15c,fp16c,fp17c,fp18c,fp19c,fp20c,fp21c,fp22c,fp23c,fp24c*/ = [ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8,~f9,~f10,~f11,~f12 ]; "s"++"\n"++[ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8,~f9,~f10,~f11,~f12 ].asString.postString; ~u1c=~f1;~u2c=~f2;~u3c=~f3;~u4c=~f4;~u5c=~f5;~u6c=~f6;~u7c=~f7;~u8c=~f8;~u9c=~f9;~u10c=~f10;~u11c=~f11;~u12c=~f12; ~si3set.value}, {nil});});
3154                         n4 = Button.new(w,Rect(Window.screenBounds.width-(Window.screenBounds.width/2)+(60*1),Window.screenBounds.height-88,60,60/1.6180339887499)).states_([["s4",Color.white,Color.black],["4set",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button; if(button.value == 1, {~r1=fp1d;~r2=fp2d;~r3=fp3d;~r4d=fp4d;~r5d=fp5d;~r6d=fp6d;~r7d=fp7d;~r8d=fp8d;~r9d=fp9d;~r10d=fp10d;~r11d=fp11d;~r12d=fp12d; #fp1d,fp2d,fp3d,fp4d,fp5d,fp6d,fp7d,fp8d,fp9d,fp10d,fp11d,fp12d/*,fp13d,fp14d,fp15d,fp16d,fp17d,fp18d,fp19d,fp20d,fp21d,fp22d,fp23d,fp24d*/ = [ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8,~f9,~f10,~f11,~f12 ]; "s"++"\n"++[ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8,~f9,~f10,~f11,~f12 ].asString.postString; ~u1d=~f1;~u2d=~f2;~u3d=~f3;~u4d=~f4;~u5d=~f5;~u6d=~f6;~u7d=~f7;~u8d=~f8;~u9d=~f9;~u10d=~f10;~u11d=~f11;~u12d=~f12; ~si4set.value}, {nil});});
3155                         n5 = Button.new(w,Rect(Window.screenBounds.width-(Window.screenBounds.width/2)-(60*2),Window.screenBounds.height-52,60,60/1.6180339887499)).states_([["s5",Color.white,Color.black],["5set",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button; if(button.value == 1, {~r1=fp1e;~r2=fp2e;~r3=fp3e;~r4e=fp4e;~r5e=fp5e;~r6e=fp6e;~r7e=fp7e;~r8e=fp8e;~r9e=fp9e;~r10e=fp10e;~r11e=fp11e;~r12e=fp12e; #fp1e,fp2e,fp3e,fp4e,fp5e,fp6e,fp7e,fp8e,fp9e,fp10e,fp11e,fp12e/*,fp13e,fp14e,fp15e,fp16e,fp17e,fp18e,fp19e,fp20e,fp21e,fp22e,fp23e,fp24e*/ = [ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8,~f9,~f10,~f11,~f12 ]; "s"++"\n"++[ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8,~f9,~f10,~f11,~f12 ].asString.postString; ~u1e=~f1;~u2e=~f2;~u3e=~f3;~u4e=~f4;~u5e=~f5;~u6e=~f6;~u7e=~f7;~u8e=~f8;~u9e=~f9;~u10e=~f10;~u11e=~f11;~u12e=~f12; ~si5set.value}, {nil});});
3156                         n6 = Button.new(w,Rect(Window.screenBounds.width-(Window.screenBounds.width/2)-(60*1),Window.screenBounds.height-52,60,60/1.6180339887499)).states_([["s6",Color.white,Color.black],["6set",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button; if(button.value == 1, {~r1=fp1f;~r2=fp2f;~r3=fp3f;~r4f=fp4f;~r5f=fp5f;~r6f=fp6f;~r7f=fp7f;~r8f=fp8f;~r9f=fp9f;~r10f=fp10f;~r11f=fp11f;~r12f=fp12f; #fp1f,fp2f,fp3f,fp4f,fp5f,fp6f,fp7f,fp8f,fp9f,fp10f,fp11f,fp12f/*,fp13f,fp14f,fp15f,fp16f,fp17f,fp18f,fp19f,fp20f,fp21f,fp22f,fp23f,fp24f*/ = [ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8,~f9,~f10,~f11,~f12 ]; "s"++"\n"++[ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8,~f9,~f10,~f11,~f12 ].asString.postString; ~u1f=~f1;~u2f=~f2;~u3f=~f3;~u4f=~f4;~u5f=~f5;~u6f=~f6;~u7f=~f7;~u8f=~f8;~u9f=~f9;~u10f=~f10;~u11e=~f11;~u12f=~f12; ~si6set.value}, {nil});});
3157                         n7 = Button.new(w,Rect(Window.screenBounds.width-(Window.screenBounds.width/2)+(0),   Window.screenBounds.height-52,60,60/1.6180339887499)).states_([["s7",Color.white,Color.black],["7set",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button; if(button.value == 1, {~r1=fp1g;~r2=fp2g;~r3=fp3g;~r4g=fp4g;~r5g=fp5g;~r6g=fp6g;~r7g=fp7g;~r8g=fp8g;~r9g=fp9g;~r10g=fp10g;~r11g=fp11g;~r12g=fp12g; #fp1g,fp2g,fp3g,fp4g,fp5g,fp6g,fp7g,fp8g,fp9g,fp10g,fp11g,fp12g/*,fp13g,fp14g,fp15g,fp16g,fp17g,fp18g,fp19g,fp20g,fp21g,fp22g,fp23g,fp24g*/ = [ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8,~f9,~f10,~f11,~f12 ]; "s"++"\n"++[ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8,~f9,~f10,~f11,~f12 ].asString.postString; ~u1g=~f1;~u2g=~f2;~u3g=~f3;~u4g=~f4;~u5g=~f5;~u6g=~f6;~u7g=~f7;~u8g=~f8;~u9g=~f9;~u10g=~f10;~u11f=~f11;~u12g=~f12; ~si7set.value}, {nil});});
3158                         n8 = Button.new(w,Rect(Window.screenBounds.width-(Window.screenBounds.width/2)+(60*1),Window.screenBounds.height-52,60,60/1.6180339887499)).states_([["s8",Color.white,Color.black],["8set",Color.white,Color.black]]).action_({arg button; button.value.postln}).action_({arg button; if(button.value == 1, {~r1=fp1h;~r2=fp2h;~r3=fp3h;~r4h=fp4h;~r5h=fp5h;~r6h=fp6h;~r7h=fp7h;~r8h=fp8h;~r9h=fp9h;~r10h=fp10h;~r11h=fp11h;~r12h=fp12h; #fp1h,fp2h,fp3h,fp4h,fp5h,fp6h,fp7h,fp8h,fp9h,fp10h,fp11h,fp12h/*,fp13h,fp14h,fp15h,fp16h,fp17h,fp18h,fp19h,fp20h,fp21h,fp22h,fp23h,fp24h*/ = [ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8,~f9,~f10,~f11,~f12 ]; "s"++"\n"++[ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8,~f9,~f10,~f11,~f12 ].asString.postString; ~u1h=~f1;~u2h=~f2;~u3h=~f3;~u4h=~f4;~u5h=~f5;~u6h=~f6;~u7h=~f7;~u8h=~f8;~u9h=~f9;~u10h=~f10;~u11g=~f11;~u12h=~f12; ~si8set.value}, {nil});});
3159
3160
3161                         ~undo = PopUpMenu(w, Rect(Window.screenBounds.width-(Window.screenBounds.width/3)+39,Window.screenBounds.height-52+19.777087639995-(40/1.6180339887499)-8,40,40/1.6180339887499)).items_(["uc","u1","u2","u3","u4","u5","u6","u7","u8"]).background_(Color.black).stringColor_(Color.white).action_({arg button;});
3162
3163                         set2 = Button.new(w,Rect(Window.screenBounds.width-(Window.screenBounds.width/3)+40+39,Window.screenBounds.height-52+19.777087639995-(40/1.6180339887499)-8,40,40/1.6180339887499)).states_([["set",Color.white,Color.black]]).action_({arg button;
3164                                 case
3165                                 {~undo.value == 0}{if(([ ~f1,~f2,~f3,~f4,~f5,~f6,~f7,~f8,~f9,~f10,~f11,~f12 ] != [~undof1,~undof2,~undof3,~undof4,~undof5,~undof6,~undof7,~undof8,~undof9,~undof10,~undof11,~undof12]).postln, {12.do(x = 0; {("f"++(x=x+1)).asSymbol.envirPut([~undof1,~undof2,~undof3,~undof4,~undof5,~undof6,~undof7,~undof8,~undof9,~undof10,~undof11,~undof12].at(x-1))});}/*,{12.do(x = 0; {("f"++(x=x+1)).asSymbol.envirPut([~redof1,~redof2,~redof3,~redof4,~redof5,~redof6,~redof7,~redof8,~redof9,~redof10,~redof11,~redof12].at(x-1))});}*/);~undo.value = 0;}
3166                                 {~undo.value == 1}{if(([fp1,fp2,fp3,fp4,fp5,fp6,fp7,fp8,fp9,fp10,fp11,fp12] == [~r1,~r2,~r3,~r4,~r5,~r6,~r7,~r8,~r9,~r10,~r11,~r12]).postln, {#fp1,fp2,fp3,fp4,fp5,fp6,fp7,fp8,fp9,fp10,fp11,fp12 = [~u1,~u2,~u3,~u4,~u5,~u6,~u7,~u8,~u9,~u10,~u11,~u12]},{#fp1,fp2,fp3,fp4,fp5,fp6,fp7,fp8,fp9,fp10,fp11,fp12 = [~r1,~r2,~r3,~r4,~r5,~r6,~r7,~r8,~r9,~r10,~r11,~r12]});~undo.value = 0;}
3167                                 {~undo.value == 2}{if([fp1b,fp2b,fp3b,fp4b,fp5b,fp6b,fp7b,fp8b,fp9b,fp10b,fp11b,fp12b] == [~r1b,~r2b,~r3b,~r4b,~r5b,~r6b,~r7b,~r8b,~r9b,~r10b,~r11b,~r12b], {#fp1b,fp2b,fp3b,fp4b,fp5b,fp6b,fp7b,fp8b,fp9b,fp10b,fp11b,fp12b = [~u1b,~u2b,~u3b,~u4b,~u5b,~u6b,~u7b,~u8b,~u9b,~u10b,~u11b,~u12b]},{#fp1b,fp2b,fp3b,fp4b,fp5b,fp6b,fp7b,fp8b,fp9b,fp10b,fp11b,fp12b = [~r1b,~r2b,~r3b,~r4b,~r5b,~r6b,~r7b,~r8b,~r9b,~r10b,~r11b,~r12b]});~undo.value = 0;}
3168                                 {~undo.value == 3}{if([fp1c,fp2c,fp3c,fp4c,fp5c,fp6c,fp7c,fp8c,fp9c,fp10c,fp11c,fp12c] == [~r1c,~r2c,~r3c,~r4c,~r5c,~r6c,~r7c,~r8c,~r9c,~r10c,~r11c,~r12c], {#fp1c,fp2c,fp3c,fp4c,fp5c,fp6c,fp7c,fp8c,fp9c,fp10c,fp11c,fp12c = [~u1c,~u2c,~u3c,~u4c,~u5c,~u6c,~u7c,~u8c,~u9c,~u10c,~u11c,~u12c]},{#fp1c,fp2c,fp3c,fp4c,fp5c,fp6c,fp7c,fp8c,fp9c,fp10c,fp11c,fp12c = [~r1c,~r2c,~r3c,~r4c,~r5c,~r6c,~r7c,~r8c,~r9c,~r10c,~r11c,~r12c]});~undo.value = 0;}
3169                                 {~undo.value == 4}{if([fp1d,fp2d,fp3d,fp4d,fp5d,fp6d,fp7d,fp8d,fp9d,fp10d,fp11d,fp12d] == [~r1d,~r2d,~r3d,~r4d,~r5d,~r6d,~r7d,~r8d,~r9d,~r10d,~r11d,~r12d], {#fp1d,fp2d,fp3d,fp4d,fp5d,fp6d,fp7d,fp8d,fp9d,fp10d,fp11d,fp12d = [~u1d,~u2d,~u3d,~u4d,~u5d,~u6d,~u7d,~u8d,~u9d,~u10d,~u11d,~u12d]},{#fp1d,fp2d,fp3d,fp4d,fp5d,fp6d,fp7d,fp8d,fp9d,fp10d,fp11d,fp12d = [~r1d,~r2d,~r3d,~r4d,~r5d,~r6d,~r7d,~r8d,~r9d,~r10d,~r11d,~r12d]});~undo.value = 0;}
3170                                 {~undo.value == 5}{if([fp1e,fp2e,fp3e,fp4e,fp5e,fp6e,fp7e,fp8e,fp9e,fp10e,fp11e,fp12e] == [~r1e,~r2e,~r3e,~r4e,~r5e,~r6e,~r7e,~r8e,~r9e,~r10e,~r11e,~r12e], {#fp1e,fp2e,fp3e,fp4e,fp5e,fp6e,fp7e,fp8e,fp9e,fp10e,fp11e,fp12e = [~u1e,~u2e,~u3e,~u4e,~u5e,~u6e,~u7e,~u8e,~u9e,~u10e,~u11e,~u12e]},{#fp1e,fp2e,fp3e,fp4e,fp5e,fp6e,fp7e,fp8e,fp9e,fp10e,fp11e,fp12e = [~r1e,~r2e,~r3e,~r4e,~r5e,~r6e,~r7e,~r8e,~r9e,~r10e,~r11e,~r12e]});~undo.value = 0;}
3171                                 {~undo.value == 6}{if([fp1f,fp2f,fp3f,fp4f,fp5f,fp6f,fp7f,fp8f,fp9f,fp10f,fp11f,fp12f] == [~r1f,~r2f,~r3f,~r4f,~r5f,~r6f,~r7f,~r8f,~r9f,~r10f,~r11f,~r12f], {#fp1f,fp2f,fp3f,fp4f,fp5f,fp6f,fp7f,fp8f,fp9f,fp10f,fp11f,fp12f = [~u1f,~u2f,~u3f,~u4f,~u5f,~u6f,~u7f,~u8f,~u9f,~u10f,~u11f,~u12f]},{#fp1f,fp2f,fp3f,fp4f,fp5f,fp6f,fp7f,fp8f,fp9f,fp10f,fp11f,fp12f = [~r1f,~r2f,~r3f,~r4f,~r5f,~r6f,~r7f,~r8f,~r9f,~r10f,~r11f,~r12f]});~undo.value = 0;}
3172                                 {~undo.value == 7}{if([fp1g,fp2g,fp3g,fp4g,fp5g,fp6g,fp7g,fp8g,fp9g,fp10g,fp11g,fp12g] == [~r1g,~r2g,~r3g,~r4g,~r5g,~r6g,~r7g,~r8g,~r9g,~r10g,~r11g,~r12g], {#fp1g,fp2g,fp3g,fp4g,fp5g,fp6g,fp7g,fp8g,fp9g,fp10g,fp11g,fp12g = [~u1g,~u2g,~u3g,~u4g,~u5g,~u6g,~u7g,~u8g,~u9g,~u10g,~u11g,~u12g]},{#fp1g,fp2g,fp3g,fp4g,fp5g,fp6g,fp7g,fp8g,fp9g,fp10g,fp11g,fp12g = [~r1g,~r2g,~r3g,~r4g,~r5g,~r6g,~r7g,~r8g,~r9g,~r10g,~r11g,~r12g]});~undo.value = 0;}
3173                                 {~undo.value == 8}{if([fp1h,fp2h,fp3h,fp4h,fp5h,fp6h,fp7h,fp8h,fp9h,fp10h,fp11h,fp12h] == [~r1h,~r2h,~r3h,~r4h,~r5h,~r6h,~r7h,~r8h,~r9h,~r10h,~r11h,~r12h], {#fp1h,fp2h,fp3h,fp4h,fp5h,fp6h,fp7h,fp8h,fp9h,fp10h,fp11h,fp12h = [~u1h,~u2h,~u3h,~u4h,~u5h,~u6h,~u7h,~u8h,~u9h,~u10h,~u11h,~u12h]},{#fp1h,fp2h,fp3h,fp4h,fp5h,fp6h,fp7h,fp8h,fp9h,fp10h,fp11h,fp12h = [~r1h,~r2h,~r3h,~r4h,~r5h,~r6h,~r7h,~r8h,~r9h,~r10h,~r11h,~r12h]});~undo.value = 0;};
3174                         });
3175
3176                         /*{[~r1,~r2,~r3,~r4,~r5,~r6,~r7,~r9,~r10,~r11,~r12] = [fp1,fp2,fp3,fp4,fp5,fp6,fp7,fp8,fp9,fp10,fp11,fp12]}
3177                         {[~r1b,~r2b,~r3b,~r4b,~r5b,~r6b,~r7b,~r9b,~r10b,~r11b,~r12b] = [fp1b,fp2b,fp3b,fp4b,fp5b,fp6b,fp7b,fp8b,fp9b,fp10b,fp11b,fp12b]}
3178                         {[~r1c,~r2c,~r3c,~r4c,~r5c,~r6c,~r7c,~r9c,~r10c,~r11c,~r12c] = [fp1c,fp2c,fp3c,fp4c,fp5c,fp6c,fp7c,fp8c,fp9c,fp10c,fp11c,fp12c]}
3179                         {[~r1d,~r2d,~r3d,~r4d,~r5d,~r6d,~r7d,~r9d,~r10d,~r11d,~r12d] = [fp1d,fp2d,fp3d,fp4d,fp5d,fp6d,fp7d,fp8d,fp9d,fp10d,fp11d,fp12d]}
3180                         {[~r1e,~r2e,~r3e,~r4e,~r5e,~r6e,~r7e,~r9e,~r10e,~r11e,~r12e] = [fp1e,fp2e,fp3e,fp4e,fp5e,fp6e,fp7e,fp8e,fp9e,fp10e,fp11e,fp12e]}
3181                         {[~r1f,~r2f,~r3f,~r4f,~r5f,~r6f,~r7f,~r9f,~r10f,~r11f,~r12f] = [fp1f,fp2f,fp3f,fp4f,fp5f,fp6f,fp7f,fp8f,fp9f,fp10f,fp11f,fp12f]}
3182                         {[~r1g,~r2g,~r3g,~r4g,~r5g,~r6g,~r7g,~r9g,~r10g,~r11g,~r12g] = [fp1g,fp2g,fp3g,fp4g,fp5g,fp6g,fp7g,fp8g,fp9g,fp10g,fp11g,fp12g]}
3183                         {[~r1h,~r2h,~r3h,~r4h,~r5h,~r6h,~r7h,~r9h,~r10h,~r11h,~r12h] = [fp1h,fp2h,fp3h,fp4h,fp5h,fp6h,fp7h,fp8h,fp9h,fp10h,fp11h,fp12h]}*/
3184                         /*set = PopUpMenu(w, Rect(Window.screenBounds.width-20,~bpt+69+5-(20/1.6180339887499),20,20/1.6180339887499)).items_(["undo"]).background_(Color.black).stringColor_(Color.white).action({
3185                         case
3186                         {~r1,~r2,~r3,~r4,~r5,~r6,~r7,~r1,~r1,~r1,~r1,~r1,}{}
3187                         });
3188
3189                         set2 = Button(w,Rect(20+60*2+16+140,Window.screenBounds.height-88+(16/1.6180339887499*0),60,60/1.6180339887499)).states_([["set",Color.white,Color.black]]).mouseDownAction_({
3190                         */
3191
3192                         ~bfreqstart = ~basefreq;
3193                         ~bfreq = PopUpMenu(w, Rect(20+60*2+16,Window.screenBounds.height-88+(30/1.6180339887499*0),180,60/1.6180339887499)).items_(~bfreqv = (-1); [~basefreq.asString++" hz"]++Array.fill(128, {~freqmap.at(~bfreqv=~bfreqv+1).asString++" hz"})).background_(Color.black).stringColor_(Color.white).action_({arg button;});
3194
3195                         ~startrecord = Button.new(w,Rect(Window.screenBounds.width-(Window.screenBounds.width/3)+39,Window.screenBounds.height-52+19.777087639995,28,28/1.6180339887499)).states_([["rc",Color.white,Color.black],["rc",Color.black,Color.red]]).action_({arg button; Server.default.record; ~numsynths.stop; if(button.value == 0, {button.value = 1});});
3196
3197                         ~pauserecord = Button.new(w,Rect(Window.screenBounds.width-(Window.screenBounds.width/3)+28+39,Window.screenBounds.height-52+19.777087639995,28,28/1.6180339887499)).states_([["prc",Color.white,Color.black],["/prc",Color.black,Color.blue]]).action_({arg button; if(button == 1, {Server.default.pauseRecording;}, {Server.default.record});});
3198
3199                         ~stoprecord = Button.new(w,Rect(Window.screenBounds.width-(Window.screenBounds.width/3)+28+28+39,Window.screenBounds.height-52+19.777087639995,28,28/1.6180339887499)).states_([["/rc",Color.white,Color.black]]).action_({arg button; Server.default.stopRecording; ~startrecord.value = 0; ~pauserecord.value = 0; ~numsynths.stop; ~numsynths.play;});
3200
3201                         /*~free = Button.new(w,Rect(Window.screenBounds.width-20-20-20,~bpt+69+5,20,20/1.6180339887499)).states_([["fs",Color.white,Color.black]]).action_({arg button;
3202                         ~synthfree.value;
3203                         });*/
3204                         /*~freeserver = Button.new(w,Rect(Window.screenBounds.width-20-20-20,~bpt+75,20,20/1.6180339887499)).states_([["fs",Color.white,Color.black]]).action_({arg button;
3205                         ~synthfree.value; Server.freeAll;
3206                         });*/
3207                         ~min = Button.new(w,Rect(Window.screenBounds.width-20,~bpt+69+5-(20/1.6180339887499),20,20/1.6180339887499)).states_([["m",Color.white,Color.black]]).action_({arg button; w.minimize;});
3208
3209                         ~close = Button.new(w,Rect(Window.screenBounds.width-20,~bpt+69+5,20,20/1.6180339887499)).states_([["c",Color.white,Color.black]]).action_({arg button; w.close; ~numsynths.stop;});
3210
3211
3212                         w.front; w.fullScreen;
3213
3214                         //Developed by Ken Brant
3215
3216                 }.value);
3217 });
3218 );
3219
3220 //Interpreted King Wen Sequence
3221
3222 /*
3223
3224 (#a,b,c,d,e,f = /*[ 128.43436842029,128.43436842029,128.43436842029,128.43436842029,128.43436842029,128.43436842029  ]*/
3225 [ ~basefreq,~basefreq,~basefreq,~basefreq,~basefreq,~basefreq  ];
3226 ~a = a; ~b = b; ~c =c; ~d = d; ~e = e;~f=f;);
3227
3228 ~fth = 1.4142135623729;
3229
3230 /*1*/   #a,b,c,d,e,f=[ ~a,~b,~c,~d,~e,~f  ],
3231 /*2*/   [ a = a/~fth*n1, b = b/~fth*n1, c = c/~fth*n1, d = d/~fth*n1, e = e/~fth*n1, f = f/~fth*n1 ],
3232 /*3*/   [ a = a,         b = b*~fth,    c = c,         d = d,         e = e,         f = f*~fth    ],
3233 /*4*/   [ a = a*~fth,    b = b/~fth,    c = c,         d = d,         e = e*~fth,    f = f/~fth    ],
3234 /*5*/   [ a = a/~fth,    b = b*~fth,    c = c,         d = d*~fth,    e = e,         f = f*~fth    ],
3235 /*6*/   [ a = a*~fth,    b = b,         c = c*~fth,    d = d/~fth,    e = e,         f = f/~fth    ],
3236 /*7*/   [ a = a/~fth,    b = b/~fth,    c = c/~fth,    d = d,         e = e,         f = f         ],
3237 /*8*/   [ a = a,         b = b*~fth,    c = c,         d = d,         e = e/~fth,    f = f         ],
3238 /*9*/   [ a = a*~fth,    b = b,         c = c,         d = d*~fth,    e = e*~fth,    f = f*~fth    ],
3239 /*10*/  [ a = a,         b = b,         c = c*~fth,    d = d/~fth,    e = e,         f = f         ],
3240 /*11*/  [ a = a/~fth,    b = b/~fth,    c = c/~fth,    d = d*~fth,    e = e,         f = f         ],
3241 /*12*/  [ a = a*~fth*n2, b = b*~fth*n2, c = c*~fth*n2, d = d/~fth*n2, e = e/~fth*n2, f = f/~fth*n2 ],
3242 /*13*/  [ a = a,         b = b,         c = c,         d = d*~fth,    e = e,         f = f*~fth    ],
3243 /*14*/  [ a = a,         b = b/~fth,    c = c,         d = d,         e = e*~fth,    f = f         ],
3244 /*15*/  [ a = a/~fth,    b = b,         c = c/~fth,    d = d,         e = e/~fth,    f = f/~fth    ],
3245 /*16*/  [ a = a,         b = b,         c = c*~fth,    d = d/~fth,    e = e,         f = f         ],
3246 /*17*/  [ a = a,         b = b*~fth,    c = c,         d = d,         e = e,         f = f*~fth    ],
3247 /*18*/  [ a = a*~fth*n3, b = b/~fth*n3, c = c/~fth*n3, d = d*~fth*n3, e = e*~fth*n3, f = f/~fth*n3 ],
3248 /*19*/  [ a = a/~fth,    b = b,         c = c,         d = d/~fth,    e = e,         f = f*~fth    ],
3249 /*20*/  [ a = a*~fth,    b = b*~fth,    c = c,         d = d,         e = e/~fth,    f = f/~fth    ],
3250 /*21*/  [ a = a,         b = b/~fth,    c = c*~fth,    d = d,         e = e,         f = f*~fth    ],
3251 /*22*/  [ a = a,         b = b,         c = c/~fth,    d = d*~fth,    e = e,         f = f         ],
3252 /*23*/  [ a = a,         b = b,         c = c,         d = d/~fth,    e = e,         f = f/~fth    ],
3253 /*24*/  [ a = a/~fth,    b = b,         c = c,         d = d,         e = e,         f = f*~fth    ],
3254 /*25*/  [ a = a*~fth,    b = b*~fth,    c = c*~fth,    d = d,         e = e,         f = f         ],
3255 /*26*/  [ a = a,         b = b/~fth,    c = c/~fth,    d = d*~fth,    e = e*~fth,    f = f         ],
3256 /*27*/  [ a = a,         b = b,         c = c,         d = d/~fth,    e = e/~fth,    f = f         ],
3257 /*28*/  [ a = a/~fth*n4, b = b*~fth*n4, c = c*~fth*n4, d = d*~fth*n4, e = e*~fth*n4, f = f/~fth*n4 ],
3258 /*29*/  [ a = a,         b = b,         c = c/~fth,    d = d/~fth,    e = e,         f = f         ],
3259 /*30*/  [ a = a*~fth*n5, b = b/~fth*n5, c = c*~fth*n5, d = d*~fth*n5, e = e/~fth*n5, f = f*~fth*n5 ],
3260 /*31*/  [ a = a/~fth,    b = b*~fth,    c = c,         d = d,         e = e,         f = f/~fth    ],
3261 /*32*/  [ a = a,         b = b/~fth,    c = c,         d = d,         e = e*~fth,    f = f         ],
3262 /*33*/  [ a = a*~fth,    b = b*~fth,    c = c,         d = d,         e = e/~fth,    f = f         ],
3263 /*34*/  [ a = a/~fth,    b = b/~fth,    c = c,         d = d,         e = e*~fth,    f = f*~fth    ],
3264 /*35*/  [ a = a*~fth,    b = b,         c = c,         d = d/~fth,    e = e/~fth,    f = f/~fth    ],
3265 /*36*/  [ a = a/~fth,    b = b,         c = c/~fth,    d = d*~fth,    e = e,         f = f*~fth    ],
3266 /*37*/  [ a = a*~fth,    b = b*~fth,    c = c,         d = d,         e = e,         f = f         ],
3267 /*38*/  [ a = a,         b = b/~fth,    c = c*~fth,    d = d/~fth,    e = e*~fth,    f = f         ],
3268 /*39*/  [ a = a/~fth*n6, b = b*~fth*n6, c = c/~fth*n6, d = d*~fth*n6, e = e/~fth*n6, f = f/~fth*n6 ],
3269 /*40*/  [ a = a,         b = b/~fth,    c = c*~fth,    d = d/~fth,    e = e*~fth,    f = f         ],
3270 /*41*/  [ a = a*~fth,    b = b,         c = c/~fth,    d = d,         e = e,         f = f*~fth    ],
3271 /*42*/  [ a = a,         b = b*~fth,    c = c,         d = d,         e = e/~fth,    f = f         ],
3272 /*43*/  [ a = a/~fth,    b = b,         c = c*~fth,    d = d*~fth,    e = e*~fth,    f = f         ],
3273 /*44*/  [ a = a*~fth,    b = b,         c = c,         d = d,         e = e,         f = f/~fth    ],
3274 /*45*/  [ a = a/~fth,    b = b,         c = c,         d = d/~fth,    e = e/~fth,    f = f         ],
3275 /*46*/  [ a = a,         b = b/~fth,    c = c/~fth,    d = d*~fth,    e = e*~fth,    f = f         ],
3276 /*47*/  [ a = a,         b = b*~fth,    c = c*~fth,    d = d/~fth,    e = e,         f = f         ],
3277 /*48*/  [ a = a,         b = b,         c = c/~fth,    d = d*~fth,    e = e,         f = f         ],
3278 /*49*/  [ a = a,         b = b,         c = c*~fth,    d = d,         e = e/~fth,    f = f*~fth    ],
3279 /*50*/  [ a = a*~fth,    b = b/~fth,    c = c,         d = d,         e = e*~fth,    f = f/~fth    ],
3280 /*51*/  [ a = a/~fth,    b = b,         c = c,         d = d/~fth,    e = e/~fth,    f = f*~fth    ],
3281 /*52*/  [ a = a*~fth,    b = b,         c = c/~fth,    d = d*~fth,    e = e,         f = f/~fth    ],
3282 /*53*/  [ a = a,         b = b*~fth,    c = c,         d = d,         e = e,         f = f         ],
3283 /*54*/  [ a = a/~fth*n7, b = b/~fth*n7, c = c*~fth*n7, d = d/~fth*n7, e = e*~fth*n7, f = f*~fth*n7 ],
3284 /*55*/  [ a = a,         b = b,         c = c,         d = d*~fth,    e = e/~fth,    f = f         ],
3285 /*56*/  [ a = a*~fth,    b = b,         c = c,         d = d,         e = e,         f = f/~fth    ],
3286 /*57*/  [ a = a,         b = b*~fth,    c = c/~fth,    d = d,         e = e*~fth,    f = f         ],
3287 /*58*/  [ a = a/~fth,    b = b,         c = c*~fth,    d = d/~fth,    e = e,         f = f*~fth    ],
3288 /*59*/  [ a = a*~fth,    b = b,         c = c/~fth,    d = d,         e = e,         f = f/~fth    ],
3289 /*60*/  [ a = a/~fth,    b = b,         c = c,         d = d,         e = e,         f = f*~fth    ],
3290 /*61*/  [ a = a*~fth,    b = b,         c = c,         d = d,         e = e,         f = f         ],
3291 /*62*/  [ a = a/~fth*n8, b = b/~fth*n8, c = c*~fth*n8, d = d*~fth*n8, e = e/~fth*n8, f = f/~fth*n8 ],
3292 /*63*/  [ a = a,         b = b*~fth,    c = c/~fth,    d = d,         e = e,         f = f*~fth    ],
3293 /*64*/  [ a = a*~fth*n9, b = b/~fth*n9, c = c*~fth*n9, d = d/~fth*n9, e = e*~fth*n9, f = f/~fth*n9 ],
3294
3295 /*1*/   [ a = a,         b = b*~fth,    c = c,         d = d*~fth,    e = e,         f = f*~fth    ],...
3296
3297 */
3298