#N canvas 0 0 189 428 10; #N canvas 51 403 292 214 graph2 0; #X obj 24 36 tgl 15 0 pdon r_pdon On/Off 20 8 192 10 -262144 -1 -1 1 1; #X obj 24 103 tgl 15 0 tun-pythag tun-r_pythag Pythagorean 20 8 192 10 -262144 -1 -1 0 1; #X obj 24 124 tgl 15 0 tun-mean tun-r_mean Meantone 20 8 192 10 -262144 -1 -1 0 1; #X obj 24 145 tgl 15 0 tun-just tun-r_just Just 20 8 192 10 -262144 -1 -1 0 1; #X obj 213 48 vsl 15 101 0 100 0 0 vol r_vol Volume -13 -8 192 10 -262144 -1 -1 0 1; #X obj 213 159 bng 15 250 50 0 mute empty Mute -6 23 128 10 -262144 -1 -1; #N canvas 666 199 301 332 guts 0; #X obj 19 248 s r_vol; #X obj 62 200 r vol; #X obj 105 200 r mute; #N canvas 83 310 450 300 initialize 0; #X msg 17 39 dsp \$1; #X obj 17 63 s pd; #X obj 82 15 loadbang; #X obj 82 39 1; #X obj 17 15 r pdon; #X obj 146 38 0; #X obj 146 64 s tun-center; #X obj 82 63 s tun-r_equal; #X obj 82 88 s r_pdon; #X obj 178 92 s tun-read; #X obj 83 113 s tun-r_c; #X connect 0 0 1 0; #X connect 2 0 3 0; #X connect 2 0 5 0; #X connect 2 0 9 0; #X connect 3 0 7 0; #X connect 3 0 8 0; #X connect 3 0 10 0; #X connect 4 0 0 0; #X connect 5 0 6 0; #X restore 179 256 pd initialize; #N canvas 93 306 450 300 windows 0; #X obj 15 12 r tun-1on; #X obj 15 35 sel 1; #X obj 15 58 0; #X obj 15 94 s tun-r_1on; #X obj 71 35 sel 1; #X obj 71 58 0; #X obj 127 35 sel 1; #X obj 127 58 0; #X obj 182 35 sel 1; #X obj 182 58 0; #X obj 71 12 r tun-2on; #X obj 127 12 r tun-3on; #X obj 182 12 r tun-4on; #X obj 71 94 s tun-r_2on; #X obj 127 94 s tun-r_3on; #X obj 182 94 s tun-r_4on; #X connect 0 0 1 0; #X connect 1 0 2 0; #X connect 2 0 13 0; #X connect 2 0 14 0; #X connect 2 0 15 0; #X connect 4 0 5 0; #X connect 5 0 3 0; #X connect 5 0 14 0; #X connect 5 0 15 0; #X connect 6 0 7 0; #X connect 7 0 3 0; #X connect 7 0 13 0; #X connect 7 0 15 0; #X connect 8 0 9 0; #X connect 9 0 14 0; #X connect 9 0 13 0; #X connect 9 0 3 0; #X connect 10 0 4 0; #X connect 11 0 6 0; #X connect 12 0 8 0; #X restore 179 281 pd windows; #N canvas 80 386 454 304 pitches 0; #X obj 30 252 outlet; #X obj 67 162 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 1 1 ; #N canvas 33 104 277 189 tuning_system 0; #X obj 23 15 r tun-equal; #X obj 157 15 r tun-mean; #X obj 217 15 r tun-just; #X obj 23 87 0; #X obj 23 39 sel 1; #X obj 83 39 sel 1; #X obj 157 39 sel 1; #X obj 217 39 sel 1; #X obj 83 15 r tun-pythag; #X obj 83 87 0; #X obj 157 87 0; #X obj 217 87 0; #X obj 22 159 outlet; #X obj 84 159 outlet; #X obj 156 159 outlet; #X obj 217 159 outlet; #X obj 22 136 s tun-r_equal; #X obj 82 136 s tun-r_pythag; #X obj 156 136 s tun-r_mean; #X obj 216 136 s tun-r_just; #X connect 0 0 4 0; #X connect 0 0 12 0; #X connect 1 0 6 0; #X connect 1 0 14 0; #X connect 2 0 7 0; #X connect 2 0 15 0; #X connect 3 0 13 0; #X connect 3 0 14 0; #X connect 3 0 15 0; #X connect 3 0 17 0; #X connect 3 0 18 0; #X connect 3 0 19 0; #X connect 4 0 3 0; #X connect 4 0 3 0; #X connect 5 0 9 0; #X connect 5 0 9 0; #X connect 6 0 10 0; #X connect 6 0 10 0; #X connect 7 0 11 0; #X connect 7 0 11 0; #X connect 8 0 5 0; #X connect 8 0 13 0; #X connect 9 0 12 0; #X connect 9 0 14 0; #X connect 9 0 15 0; #X connect 9 0 16 0; #X connect 9 0 18 0; #X connect 9 0 19 0; #X connect 10 0 12 0; #X connect 10 0 13 0; #X connect 10 0 15 0; #X connect 10 0 16 0; #X connect 10 0 17 0; #X connect 10 0 19 0; #X connect 11 0 12 0; #X connect 11 0 13 0; #X connect 11 0 14 0; #X connect 11 0 16 0; #X connect 11 0 17 0; #X connect 11 0 18 0; #X restore 290 144 pd tuning_system; #X obj 130 162 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1; #X obj 186 162 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1; #X obj 243 162 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1; #X obj 30 184 spigot; #X obj 93 184 spigot; #X obj 149 184 spigot; #X obj 206 184 spigot; #N canvas 89 114 276 389 pyth 0; #X obj 21 8 inlet; #X obj 21 92 % 12; #X obj 21 33 t f f; #X obj 21 117 pack 0 0; #X obj 21 142 route 0 1 2 3 4 5 6 7 8 9 10 11; #X obj 144 172 + 0.02; #X obj 109 273 - 0.02; #X obj 91 244 + 0.08; #X obj 38 172 - 0.1; #X obj 56 195 + 0.04; #X obj 74 220 - 0.06; #X obj 127 297 + 0.31; #X obj 162 195 - 0.08; #X obj 180 220 + 0.06; #X obj 197 245 + 0.1; #X obj 215 273 - 0.04; #X obj 21 341 mtof; #X obj 21 365 outlet; #X obj 65 33 r tun-center; #X obj 21 67 - 0; #X connect 0 0 2 0; #X connect 1 0 3 0; #X connect 2 0 19 0; #X connect 2 1 3 1; #X connect 3 0 4 0; #X connect 4 0 16 0; #X connect 4 1 8 0; #X connect 4 2 9 0; #X connect 4 3 10 0; #X connect 4 4 7 0; #X connect 4 5 6 0; #X connect 4 6 11 0; #X connect 4 7 5 0; #X connect 4 8 12 0; #X connect 4 9 13 0; #X connect 4 10 14 0; #X connect 4 11 15 0; #X connect 5 0 16 0; #X connect 6 0 16 0; #X connect 7 0 16 0; #X connect 8 0 16 0; #X connect 9 0 16 0; #X connect 10 0 16 0; #X connect 11 0 16 0; #X connect 12 0 16 0; #X connect 13 0 16 0; #X connect 14 0 16 0; #X connect 15 0 16 0; #X connect 16 0 17 0; #X connect 18 0 19 1; #X connect 19 0 1 0; #X restore 93 100 pd pyth; #N canvas 169 102 635 466 mean 0; #X obj 21 10 inlet; #X obj 21 92 % 12; #X obj 21 33 t f f; #X obj 21 117 pack 0 0; #X obj 21 142 route 0 1 2 3 4 5 6 7 8 9 10 11; #X obj 21 341 mtof; #X obj 21 367 outlet; #X obj 38 172 + 0.17; #X obj 56 195 - 0.07; #X obj 74 220 + 0.1; #X obj 91 244 - 0.14; #X obj 109 273 + 0.03; #X obj 127 297 - 0.12; #X obj 144 172 - 0.03; #X obj 162 195 + 0.14; #X obj 180 220 - 0.1; #X obj 197 244 + 0.07; #X obj 215 274 - 0.17; #X obj 66 33 r tun-center; #X obj 21 68 - 0; #X connect 0 0 2 0; #X connect 1 0 3 0; #X connect 2 0 19 0; #X connect 2 1 3 1; #X connect 3 0 4 0; #X connect 4 0 5 0; #X connect 4 1 7 0; #X connect 4 2 8 0; #X connect 4 3 9 0; #X connect 4 4 10 0; #X connect 4 5 11 0; #X connect 4 6 12 0; #X connect 4 7 13 0; #X connect 4 8 14 0; #X connect 4 9 15 0; #X connect 4 10 16 0; #X connect 4 11 17 0; #X connect 5 0 6 0; #X connect 7 0 5 0; #X connect 8 0 5 0; #X connect 9 0 5 0; #X connect 10 0 5 0; #X connect 11 0 5 0; #X connect 12 0 5 0; #X connect 13 0 5 0; #X connect 14 0 5 0; #X connect 15 0 5 0; #X connect 16 0 5 0; #X connect 17 0 5 0; #X connect 18 0 19 1; #X connect 19 0 1 0; #X restore 149 100 pd mean; #N canvas 160 127 276 390 just 0; #X obj 21 9 inlet; #X obj 21 92 % 12; #X obj 21 33 t f f; #X obj 21 117 pack 0 0; #X obj 21 142 route 0 1 2 3 4 5 6 7 8 9 10 11; #X obj 109 273 - 0.02; #X obj 21 341 mtof; #X obj 21 363 outlet; #X obj 38 172 + 0.12; #X obj 56 195 + 0.04; #X obj 74 220 + 0.16; #X obj 91 244 - 0.14; #X obj 127 297 + 0.21; #X obj 144 172 + 0.02; #X obj 162 195 + 0.14; #X obj 180 220 - 0.16; #X obj 197 244 - 0.04; #X obj 215 273 - 0.12; #X obj 66 33 r tun-center; #X obj 21 67 - 0; #X connect 0 0 2 0; #X connect 1 0 3 0; #X connect 2 0 19 0; #X connect 2 1 3 1; #X connect 3 0 4 0; #X connect 4 0 6 0; #X connect 4 1 8 0; #X connect 4 2 9 0; #X connect 4 3 10 0; #X connect 4 4 11 0; #X connect 4 5 5 0; #X connect 4 6 12 0; #X connect 4 7 13 0; #X connect 4 8 14 0; #X connect 4 9 15 0; #X connect 4 10 16 0; #X connect 4 11 17 0; #X connect 5 0 6 0; #X connect 6 0 7 0; #X connect 8 0 6 0; #X connect 9 0 6 0; #X connect 10 0 6 0; #X connect 11 0 6 0; #X connect 12 0 6 0; #X connect 13 0 6 0; #X connect 14 0 6 0; #X connect 15 0 6 0; #X connect 16 0 6 0; #X connect 17 0 6 0; #X connect 18 0 19 1; #X connect 19 0 1 0; #X restore 206 100 pd just; #X obj 30 100 mtof; #X obj 30 19 r tun-pitch; #X obj 270 243 outlet; #X obj 270 59 sel 0; #X obj 270 220 0; #X obj 30 41 t f f f f f; #X obj 300 85 t b; #X obj 300 220 1; #X floatatom 108 125 5 0 0; #X floatatom 162 126 5 0 0; #X floatatom 221 128 5 0 0; #X floatatom 45 128 5 0 0; #X connect 1 0 6 1; #X connect 2 0 1 0; #X connect 2 1 3 0; #X connect 2 2 4 0; #X connect 2 3 5 0; #X connect 3 0 7 1; #X connect 4 0 8 1; #X connect 5 0 9 1; #X connect 6 0 0 0; #X connect 7 0 0 0; #X connect 8 0 0 0; #X connect 9 0 0 0; #X connect 10 0 7 0; #X connect 10 0 21 0; #X connect 11 0 8 0; #X connect 11 0 22 0; #X connect 12 0 9 0; #X connect 12 0 23 0; #X connect 13 0 6 0; #X connect 13 0 24 0; #X connect 14 0 18 0; #X connect 16 0 17 0; #X connect 16 1 19 0; #X connect 17 0 15 0; #X connect 17 0 0 0; #X connect 18 0 13 0; #X connect 18 1 10 0; #X connect 18 2 11 0; #X connect 18 3 12 0; #X connect 18 4 16 0; #X connect 19 0 20 0; #X connect 20 0 15 0; #X restore 19 19 pd pitches; #X msg 84 83 \$1 20; #N canvas 21 211 911 384 keyboard 0; #X obj 21 16 r tun-key; #X obj 25 212 s tun-off57; #X obj 47 238 s tun-off58; #X obj 80 212 s tun-off59; #X obj 106 238 s tun-off60; #X obj 139 212 s tun-off61; #X obj 164 238 s tun-off62; #X obj 200 212 s tun-off63; #X obj 223 238 s tun-off64; #X obj 255 212 s tun-off65; #X obj 282 238 s tun-off66; #X obj 309 212 s tun-off67; #X obj 341 238 s tun-off68; #X obj 366 212 s tun-off69; #X obj 402 238 s tun-off70; #X obj 421 212 s tun-off71; #X obj 21 39 pack 0 0; #X obj 21 62 route 57 58 59; #X obj 127 63 route 60 61 62 63 64 65 66 67 68 69 70 71; #X obj 25 189 0; #X obj 107 189 0; #X obj 200 189 0; #X obj 282 189 0; #X obj 366 189 0; #X obj 54 161 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #X obj 52 189 0; #X obj 134 189 0; #X obj 227 189 0; #X obj 309 189 0; #X obj 393 189 0; #X obj 80 189 0; #X obj 162 189 0; #X obj 255 189 0; #X obj 338 189 0; #X obj 421 189 0; #X obj 139 164 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #X obj 232 164 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #X obj 311 165 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #X obj 391 165 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #X obj 55 138 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #X obj 140 141 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #X obj 233 141 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #X obj 312 142 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #X obj 392 142 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #X obj 91 34 s tun-pitch; #X obj 421 63 route 72 73 74 75 76 77 78 79 80 81 82 83 84; #X obj 459 189 0; #X obj 552 189 0; #X obj 634 189 0; #X obj 718 189 0; #X obj 486 189 0; #X obj 579 189 0; #X obj 661 189 0; #X obj 745 189 0; #X obj 514 189 0; #X obj 607 189 0; #X obj 690 189 0; #X obj 773 189 0; #X obj 491 164 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #X obj 584 164 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #X obj 663 165 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #X obj 743 165 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #X obj 492 141 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #X obj 585 141 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #X obj 664 142 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #X obj 744 142 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #X obj 252 114 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #X obj 624 111 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #X obj 458 238 s tun-off72; #X obj 491 212 s tun-off73; #X obj 516 238 s tun-off74; #X obj 552 212 s tun-off75; #X obj 575 238 s tun-off76; #X obj 607 212 s tun-off77; #X obj 634 238 s tun-off78; #X obj 661 212 s tun-off79; #X obj 693 238 s tun-off80; #X obj 718 212 s tun-off81; #X obj 754 238 s tun-off82; #X obj 773 212 s tun-off83; #X obj 799 189 0; #X obj 809 237 s tun-off84; #X connect 0 0 16 0; #X connect 0 0 44 0; #X connect 16 0 17 0; #X connect 17 0 25 0; #X connect 17 0 30 0; #X connect 17 0 39 0; #X connect 17 0 67 0; #X connect 17 1 19 0; #X connect 17 1 39 0; #X connect 17 1 30 0; #X connect 17 1 67 0; #X connect 17 2 39 0; #X connect 17 2 25 0; #X connect 17 2 19 0; #X connect 17 2 67 0; #X connect 17 3 18 0; #X connect 18 0 40 0; #X connect 18 0 26 0; #X connect 18 0 31 0; #X connect 18 0 67 0; #X connect 18 1 40 0; #X connect 18 1 20 0; #X connect 18 1 31 0; #X connect 18 1 67 0; #X connect 18 2 26 0; #X connect 18 2 20 0; #X connect 18 2 40 0; #X connect 18 2 67 0; #X connect 18 3 41 0; #X connect 18 3 27 0; #X connect 18 3 32 0; #X connect 18 3 67 0; #X connect 18 4 41 0; #X connect 18 4 32 0; #X connect 18 4 21 0; #X connect 18 4 67 0; #X connect 18 5 41 0; #X connect 18 5 27 0; #X connect 18 5 21 0; #X connect 18 5 67 0; #X connect 18 6 42 0; #X connect 18 6 33 0; #X connect 18 6 28 0; #X connect 18 6 67 0; #X connect 18 7 42 0; #X connect 18 7 33 0; #X connect 18 7 22 0; #X connect 18 7 67 0; #X connect 18 8 42 0; #X connect 18 8 28 0; #X connect 18 8 22 0; #X connect 18 8 67 0; #X connect 18 9 43 0; #X connect 18 9 29 0; #X connect 18 9 34 0; #X connect 18 9 67 0; #X connect 18 10 43 0; #X connect 18 10 34 0; #X connect 18 10 23 0; #X connect 18 10 67 0; #X connect 18 11 43 0; #X connect 18 11 29 0; #X connect 18 11 23 0; #X connect 18 11 67 0; #X connect 18 12 45 0; #X connect 19 0 1 0; #X connect 20 0 4 0; #X connect 21 0 7 0; #X connect 22 0 10 0; #X connect 23 0 13 0; #X connect 24 0 19 0; #X connect 24 0 25 0; #X connect 24 0 30 0; #X connect 25 0 2 0; #X connect 26 0 5 0; #X connect 27 0 8 0; #X connect 28 0 11 0; #X connect 29 0 14 0; #X connect 30 0 3 0; #X connect 31 0 6 0; #X connect 32 0 9 0; #X connect 33 0 12 0; #X connect 34 0 15 0; #X connect 35 0 20 0; #X connect 35 0 26 0; #X connect 35 0 31 0; #X connect 36 0 21 0; #X connect 36 0 27 0; #X connect 36 0 32 0; #X connect 37 0 22 0; #X connect 37 0 28 0; #X connect 37 0 33 0; #X connect 38 0 23 0; #X connect 38 0 29 0; #X connect 38 0 34 0; #X connect 39 0 35 0; #X connect 39 0 36 0; #X connect 39 0 37 0; #X connect 39 0 38 0; #X connect 40 0 24 0; #X connect 40 0 36 0; #X connect 40 0 37 0; #X connect 40 0 38 0; #X connect 41 0 35 0; #X connect 41 0 24 0; #X connect 41 0 37 0; #X connect 41 0 38 0; #X connect 42 0 38 0; #X connect 42 0 36 0; #X connect 42 0 35 0; #X connect 42 0 24 0; #X connect 43 0 24 0; #X connect 43 0 35 0; #X connect 43 0 36 0; #X connect 43 0 37 0; #X connect 45 0 50 0; #X connect 45 0 54 0; #X connect 45 0 62 0; #X connect 45 0 66 0; #X connect 45 1 46 0; #X connect 45 1 54 0; #X connect 45 1 62 0; #X connect 45 1 66 0; #X connect 45 2 46 0; #X connect 45 2 50 0; #X connect 45 2 62 0; #X connect 45 2 66 0; #X connect 45 3 51 0; #X connect 45 3 55 0; #X connect 45 3 63 0; #X connect 45 3 66 0; #X connect 45 4 47 0; #X connect 45 4 55 0; #X connect 45 4 63 0; #X connect 45 4 66 0; #X connect 45 5 47 0; #X connect 45 5 51 0; #X connect 45 5 63 0; #X connect 45 5 66 0; #X connect 45 6 52 0; #X connect 45 6 56 0; #X connect 45 6 64 0; #X connect 45 6 66 0; #X connect 45 7 48 0; #X connect 45 7 56 0; #X connect 45 7 64 0; #X connect 45 7 66 0; #X connect 45 8 48 0; #X connect 45 8 52 0; #X connect 45 8 64 0; #X connect 45 8 66 0; #X connect 45 9 53 0; #X connect 45 9 57 0; #X connect 45 9 80 0; #X connect 45 9 65 0; #X connect 45 9 66 0; #X connect 45 10 49 0; #X connect 45 10 65 0; #X connect 45 10 57 0; #X connect 45 10 80 0; #X connect 45 10 66 0; #X connect 45 11 49 0; #X connect 45 11 53 0; #X connect 45 11 80 0; #X connect 45 11 65 0; #X connect 45 11 66 0; #X connect 45 12 49 0; #X connect 45 12 53 0; #X connect 45 12 57 0; #X connect 45 12 65 0; #X connect 45 12 66 0; #X connect 46 0 68 0; #X connect 47 0 71 0; #X connect 48 0 74 0; #X connect 49 0 77 0; #X connect 50 0 69 0; #X connect 51 0 72 0; #X connect 52 0 75 0; #X connect 53 0 78 0; #X connect 54 0 70 0; #X connect 55 0 73 0; #X connect 56 0 76 0; #X connect 57 0 79 0; #X connect 58 0 46 0; #X connect 58 0 50 0; #X connect 58 0 54 0; #X connect 59 0 47 0; #X connect 59 0 51 0; #X connect 59 0 55 0; #X connect 60 0 48 0; #X connect 60 0 52 0; #X connect 60 0 56 0; #X connect 61 0 49 0; #X connect 61 0 53 0; #X connect 61 0 57 0; #X connect 61 0 80 0; #X connect 62 0 59 0; #X connect 62 0 60 0; #X connect 62 0 61 0; #X connect 63 0 58 0; #X connect 63 0 60 0; #X connect 63 0 61 0; #X connect 64 0 61 0; #X connect 64 0 59 0; #X connect 64 0 58 0; #X connect 65 0 58 0; #X connect 65 0 59 0; #X connect 65 0 60 0; #X connect 66 0 39 0; #X connect 66 0 40 0; #X connect 66 0 41 0; #X connect 66 0 42 0; #X connect 66 0 43 0; #X connect 67 0 62 0; #X connect 67 0 63 0; #X connect 67 0 64 0; #X connect 67 0 65 0; #X connect 80 0 81 0; #X restore 180 232 pd keyboard; #N canvas 350 330 450 300 pitches 0; #X obj 30 252 outlet; #X obj 67 162 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 1 1 ; #N canvas 33 104 277 189 tuning_system 0; #X obj 23 15 r tun-equal; #X obj 157 15 r tun-mean; #X obj 217 15 r tun-just; #X obj 23 87 0; #X obj 23 39 sel 1; #X obj 83 39 sel 1; #X obj 157 39 sel 1; #X obj 217 39 sel 1; #X obj 83 15 r tun-pythag; #X obj 83 87 0; #X obj 157 87 0; #X obj 217 87 0; #X obj 22 159 outlet; #X obj 84 159 outlet; #X obj 156 159 outlet; #X obj 217 159 outlet; #X obj 22 136 s tun-r_equal; #X obj 82 136 s tun-r_pythag; #X obj 156 136 s tun-r_mean; #X obj 216 136 s tun-r_just; #X connect 0 0 4 0; #X connect 0 0 12 0; #X connect 1 0 6 0; #X connect 1 0 14 0; #X connect 2 0 7 0; #X connect 2 0 15 0; #X connect 3 0 13 0; #X connect 3 0 14 0; #X connect 3 0 15 0; #X connect 3 0 17 0; #X connect 3 0 18 0; #X connect 3 0 19 0; #X connect 4 0 3 0; #X connect 4 0 3 0; #X connect 5 0 9 0; #X connect 5 0 9 0; #X connect 6 0 10 0; #X connect 6 0 10 0; #X connect 7 0 11 0; #X connect 7 0 11 0; #X connect 8 0 5 0; #X connect 8 0 13 0; #X connect 9 0 12 0; #X connect 9 0 14 0; #X connect 9 0 15 0; #X connect 9 0 16 0; #X connect 9 0 18 0; #X connect 9 0 19 0; #X connect 10 0 12 0; #X connect 10 0 13 0; #X connect 10 0 15 0; #X connect 10 0 16 0; #X connect 10 0 17 0; #X connect 10 0 19 0; #X connect 11 0 12 0; #X connect 11 0 13 0; #X connect 11 0 14 0; #X connect 11 0 16 0; #X connect 11 0 17 0; #X connect 11 0 18 0; #X restore 290 144 pd tuning_system; #X obj 130 162 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1; #X obj 186 162 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1; #X obj 243 162 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1; #X obj 30 184 spigot; #X obj 93 184 spigot; #X obj 149 184 spigot; #X obj 206 184 spigot; #N canvas 89 114 276 389 pyth 0; #X obj 21 8 inlet; #X obj 21 92 % 12; #X obj 21 33 t f f; #X obj 21 117 pack 0 0; #X obj 21 142 route 0 1 2 3 4 5 6 7 8 9 10 11; #X obj 144 172 + 0.02; #X obj 109 273 - 0.02; #X obj 91 244 + 0.08; #X obj 38 172 - 0.1; #X obj 56 195 + 0.04; #X obj 74 220 - 0.06; #X obj 127 297 + 0.31; #X obj 162 195 - 0.08; #X obj 180 220 + 0.06; #X obj 197 245 + 0.1; #X obj 215 273 - 0.04; #X obj 21 341 mtof; #X obj 21 365 outlet; #X obj 65 33 r tun-center; #X obj 21 67 - 0; #X connect 0 0 2 0; #X connect 1 0 3 0; #X connect 2 0 19 0; #X connect 2 1 3 1; #X connect 3 0 4 0; #X connect 4 0 16 0; #X connect 4 1 8 0; #X connect 4 2 9 0; #X connect 4 3 10 0; #X connect 4 4 7 0; #X connect 4 5 6 0; #X connect 4 6 11 0; #X connect 4 7 5 0; #X connect 4 8 12 0; #X connect 4 9 13 0; #X connect 4 10 14 0; #X connect 4 11 15 0; #X connect 5 0 16 0; #X connect 6 0 16 0; #X connect 7 0 16 0; #X connect 8 0 16 0; #X connect 9 0 16 0; #X connect 10 0 16 0; #X connect 11 0 16 0; #X connect 12 0 16 0; #X connect 13 0 16 0; #X connect 14 0 16 0; #X connect 15 0 16 0; #X connect 16 0 17 0; #X connect 18 0 19 1; #X connect 19 0 1 0; #X restore 93 100 pd pyth; #N canvas 169 102 635 466 mean 0; #X obj 21 10 inlet; #X obj 21 92 % 12; #X obj 21 33 t f f; #X obj 21 117 pack 0 0; #X obj 21 142 route 0 1 2 3 4 5 6 7 8 9 10 11; #X obj 21 341 mtof; #X obj 21 367 outlet; #X obj 38 172 + 0.17; #X obj 56 195 - 0.07; #X obj 74 220 + 0.1; #X obj 91 244 - 0.14; #X obj 109 273 + 0.03; #X obj 127 297 - 0.12; #X obj 144 172 - 0.03; #X obj 162 195 + 0.14; #X obj 180 220 - 0.1; #X obj 197 244 + 0.07; #X obj 215 274 - 0.17; #X obj 66 33 r tun-center; #X obj 21 68 - 0; #X connect 0 0 2 0; #X connect 1 0 3 0; #X connect 2 0 19 0; #X connect 2 1 3 1; #X connect 3 0 4 0; #X connect 4 0 5 0; #X connect 4 1 7 0; #X connect 4 2 8 0; #X connect 4 3 9 0; #X connect 4 4 10 0; #X connect 4 5 11 0; #X connect 4 6 12 0; #X connect 4 7 13 0; #X connect 4 8 14 0; #X connect 4 9 15 0; #X connect 4 10 16 0; #X connect 4 11 17 0; #X connect 5 0 6 0; #X connect 7 0 5 0; #X connect 8 0 5 0; #X connect 9 0 5 0; #X connect 10 0 5 0; #X connect 11 0 5 0; #X connect 12 0 5 0; #X connect 13 0 5 0; #X connect 14 0 5 0; #X connect 15 0 5 0; #X connect 16 0 5 0; #X connect 17 0 5 0; #X connect 18 0 19 1; #X connect 19 0 1 0; #X restore 149 100 pd mean; #N canvas 160 127 276 390 just 0; #X obj 21 9 inlet; #X obj 21 92 % 12; #X obj 21 33 t f f; #X obj 21 117 pack 0 0; #X obj 21 142 route 0 1 2 3 4 5 6 7 8 9 10 11; #X obj 109 273 - 0.02; #X obj 21 341 mtof; #X obj 21 363 outlet; #X obj 38 172 + 0.12; #X obj 56 195 + 0.04; #X obj 74 220 + 0.16; #X obj 91 244 - 0.14; #X obj 127 297 + 0.21; #X obj 144 172 + 0.02; #X obj 162 195 + 0.14; #X obj 180 220 - 0.16; #X obj 197 244 - 0.04; #X obj 215 273 - 0.12; #X obj 66 33 r tun-center; #X obj 21 67 - 0; #X connect 0 0 2 0; #X connect 1 0 3 0; #X connect 2 0 19 0; #X connect 2 1 3 1; #X connect 3 0 4 0; #X connect 4 0 6 0; #X connect 4 1 8 0; #X connect 4 2 9 0; #X connect 4 3 10 0; #X connect 4 4 11 0; #X connect 4 5 5 0; #X connect 4 6 12 0; #X connect 4 7 13 0; #X connect 4 8 14 0; #X connect 4 9 15 0; #X connect 4 10 16 0; #X connect 4 11 17 0; #X connect 5 0 6 0; #X connect 6 0 7 0; #X connect 8 0 6 0; #X connect 9 0 6 0; #X connect 10 0 6 0; #X connect 11 0 6 0; #X connect 12 0 6 0; #X connect 13 0 6 0; #X connect 14 0 6 0; #X connect 15 0 6 0; #X connect 16 0 6 0; #X connect 17 0 6 0; #X connect 18 0 19 1; #X connect 19 0 1 0; #X restore 206 100 pd just; #X obj 30 100 mtof; #X obj 270 243 outlet; #X obj 270 59 sel 0; #X obj 270 220 0; #X obj 30 41 t f f f f f; #X obj 300 85 t b; #X obj 300 220 1; #X floatatom 108 125 5 0 0; #X floatatom 162 126 5 0 0; #X floatatom 221 128 5 0 0; #X floatatom 45 128 5 0 0; #X obj 30 19 r tun-pitch2; #X obj 347 72 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #X connect 1 0 6 1; #X connect 2 0 1 0; #X connect 2 1 3 0; #X connect 2 2 4 0; #X connect 2 3 5 0; #X connect 3 0 7 1; #X connect 4 0 8 1; #X connect 5 0 9 1; #X connect 6 0 0 0; #X connect 7 0 0 0; #X connect 8 0 0 0; #X connect 9 0 0 0; #X connect 10 0 7 0; #X connect 10 0 20 0; #X connect 11 0 8 0; #X connect 11 0 21 0; #X connect 12 0 9 0; #X connect 12 0 22 0; #X connect 13 0 6 0; #X connect 13 0 23 0; #X connect 15 0 16 0; #X connect 15 0 25 0; #X connect 15 1 18 0; #X connect 16 0 14 0; #X connect 16 0 0 0; #X connect 17 0 13 0; #X connect 17 1 10 0; #X connect 17 2 11 0; #X connect 17 3 12 0; #X connect 17 4 15 0; #X connect 18 0 19 0; #X connect 19 0 14 0; #X connect 24 0 17 0; #X restore 131 19 pd pitches; #X msg 196 83 \$1 20; #N canvas 333 286 450 300 intervals 0; #X obj 20 153 random 12; #X obj 20 176 + 60; #X obj 20 199 t f f; #X obj 50 227 + 0; #X obj 20 259 s tun-pitch; #X obj 73 259 s tun-pitch2; #X obj 20 111 t b f b; #X obj 92 176 0; #X obj 20 16 r tun-min2; #X obj 70 16 r tun-maj2; #X obj 20 39 1; #X obj 70 39 2; #X obj 119 16 r tun-min3; #X obj 119 39 3; #X obj 169 39 4; #X obj 169 16 r tun-maj3; #X obj 219 16 r tun-p4; #X obj 255 16 r tun-tri; #X obj 297 16 r tun-p5; #X obj 219 39 5; #X obj 255 39 6; #X obj 297 39 7; #X obj 121 63 r tun-min6; #X obj 171 63 r tun-maj6; #X obj 220 63 r tun-min7; #X obj 270 63 r tun-maj7; #X obj 320 63 r tun-oct; #X obj 121 86 8; #X obj 171 87 9; #X obj 220 86 10; #X obj 270 86 11; #X obj 320 86 12; #X obj 92 153 del 2000; #X connect 0 0 1 0; #X connect 1 0 2 0; #X connect 2 0 4 0; #X connect 2 1 3 0; #X connect 3 0 5 0; #X connect 6 0 0 0; #X connect 6 1 3 1; #X connect 6 2 32 0; #X connect 7 0 5 0; #X connect 7 0 4 0; #X connect 8 0 10 0; #X connect 9 0 11 0; #X connect 10 0 6 0; #X connect 11 0 6 0; #X connect 12 0 13 0; #X connect 13 0 6 0; #X connect 14 0 6 0; #X connect 15 0 14 0; #X connect 16 0 19 0; #X connect 17 0 20 0; #X connect 18 0 21 0; #X connect 19 0 6 0; #X connect 20 0 6 0; #X connect 21 0 6 0; #X connect 22 0 27 0; #X connect 23 0 28 0; #X connect 24 0 29 0; #X connect 25 0 30 0; #X connect 26 0 31 0; #X connect 27 0 6 0; #X connect 28 0 6 0; #X connect 29 0 6 0; #X connect 30 0 6 0; #X connect 31 0 6 0; #X connect 32 0 7 0; #X restore 180 208 pd intervals; #N canvas 59 348 532 305 thirds 0; #X obj 20 130 + 60; #X obj 20 153 t f f; #X obj 50 181 + 0; #X obj 20 213 s tun-pitch; #X obj 73 213 s tun-pitch2; #X obj 20 53 t b f b; #X obj 92 130 0; #X obj 161 102 7; #X obj 161 14 r tun-eq5; #X obj 210 15 r tun-pyth5; #X obj 267 15 r tun-mean5; #X obj 323 15 r tun-just5; #X obj 20 108 + 0; #X obj 36 80 r tun-center; #X obj 323 39 t b b; #X obj 267 39 t b b; #X obj 210 40 t b b; #X obj 161 37 t b b; #X obj 327 180 t b b; #X obj 271 180 t b b; #X obj 214 181 t b b; #X obj 165 178 t b b; #X obj 165 243 4; #X obj 165 155 r tun-eq3; #X obj 214 156 r tun-pyth3; #X obj 271 156 r tun-mean3; #X obj 327 156 r tun-just3; #X obj 353 132 s tun-r_just; #X obj 240 130 s tun-r_pythag; #X obj 191 86 s tun-r_equal; #X obj 297 87 s tun-r_mean; #X obj 191 63 1; #X obj 240 107 1; #X obj 297 64 1; #X obj 353 109 1; #X obj 357 274 s tun-r_just; #X obj 244 272 s tun-r_pythag; #X obj 195 227 s tun-r_equal; #X obj 301 228 s tun-r_mean; #X obj 301 205 1; #X obj 195 204 1; #X obj 244 249 1; #X obj 357 251 1; #X floatatom 76 238 5 0 0; #X floatatom 19 242 5 0 0; #X obj 92 107 del 2000; #X connect 0 0 1 0; #X connect 1 0 3 0; #X connect 1 0 44 0; #X connect 1 1 2 0; #X connect 2 0 4 0; #X connect 2 0 43 0; #X connect 5 0 12 0; #X connect 5 1 2 1; #X connect 5 2 45 0; #X connect 6 0 4 0; #X connect 6 0 3 0; #X connect 6 0 43 0; #X connect 6 0 44 0; #X connect 7 0 5 0; #X connect 8 0 17 0; #X connect 9 0 16 0; #X connect 10 0 15 0; #X connect 11 0 14 0; #X connect 12 0 0 0; #X connect 13 0 12 1; #X connect 14 0 7 0; #X connect 14 1 34 0; #X connect 15 0 7 0; #X connect 15 1 33 0; #X connect 16 0 7 0; #X connect 16 1 32 0; #X connect 17 0 7 0; #X connect 17 1 31 0; #X connect 18 0 22 0; #X connect 18 1 42 0; #X connect 19 0 22 0; #X connect 19 1 39 0; #X connect 20 0 22 0; #X connect 20 1 41 0; #X connect 21 0 22 0; #X connect 21 1 40 0; #X connect 22 0 5 0; #X connect 23 0 21 0; #X connect 24 0 20 0; #X connect 25 0 19 0; #X connect 26 0 18 0; #X connect 31 0 29 0; #X connect 32 0 28 0; #X connect 33 0 30 0; #X connect 34 0 27 0; #X connect 39 0 38 0; #X connect 40 0 37 0; #X connect 41 0 36 0; #X connect 42 0 35 0; #X connect 45 0 6 0; #X restore 180 185 pd thirds; #N canvas 126 317 336 233 signal 0; #X obj 33 107 osc~; #X obj 66 107 osc~; #X obj 33 193 outlet~; #X obj 66 149 *~ 0.5; #X obj 114 107 osc~; #X obj 114 149 *~ 0.25; #X obj 170 107 osc~; #X obj 170 149 *~ 0.125; #X obj 234 107 osc~; #X obj 234 149 *~ 0.0625; #X obj 33 26 inlet; #X obj 66 77 * 2; #X obj 114 77 * 3; #X obj 170 77 * 4; #X obj 234 77 * 5; #X connect 0 0 2 0; #X connect 1 0 3 0; #X connect 3 0 2 0; #X connect 4 0 5 0; #X connect 5 0 2 0; #X connect 6 0 7 0; #X connect 7 0 2 0; #X connect 8 0 9 0; #X connect 9 0 2 0; #X connect 10 0 0 0; #X connect 10 0 11 0; #X connect 10 0 12 0; #X connect 10 0 13 0; #X connect 10 0 14 0; #X connect 11 0 1 0; #X connect 12 0 4 0; #X connect 13 0 6 0; #X connect 14 0 8 0; #X restore 19 48 pd signal; #N canvas 126 317 336 233 signal 0; #X obj 33 107 osc~; #X obj 66 107 osc~; #X obj 33 193 outlet~; #X obj 66 149 *~ 0.5; #X obj 114 107 osc~; #X obj 114 149 *~ 0.25; #X obj 170 107 osc~; #X obj 170 149 *~ 0.125; #X obj 234 107 osc~; #X obj 234 149 *~ 0.0625; #X obj 33 26 inlet; #X obj 66 77 * 2; #X obj 114 77 * 3; #X obj 170 77 * 4; #X obj 234 77 * 5; #X connect 0 0 2 0; #X connect 1 0 3 0; #X connect 3 0 2 0; #X connect 4 0 5 0; #X connect 5 0 2 0; #X connect 6 0 7 0; #X connect 7 0 2 0; #X connect 8 0 9 0; #X connect 9 0 2 0; #X connect 10 0 0 0; #X connect 10 0 11 0; #X connect 10 0 12 0; #X connect 10 0 13 0; #X connect 10 0 14 0; #X connect 11 0 1 0; #X connect 12 0 4 0; #X connect 13 0 6 0; #X connect 14 0 8 0; #X restore 131 48 pd signal; #N canvas 2 374 541 378 melody 0; #X obj 95 9 r tun-trans; #X obj 21 107 s tun-pitch; #X obj 79 54 + 0; #X obj 21 3 r tun-melody; #X obj 220 70 qlist; #X obj 220 43 r tun-play; #X obj 21 55 0; #X obj 21 28 sel -1000; #X obj 79 79 + 60; #X obj 15 174 r tun-c; #X obj 15 196 sel 1; #X obj 15 220 0; #X obj 57 196 sel 1; #X obj 57 220 1; #X obj 57 174 r tun-db; #X obj 99 196 sel 1; #X obj 99 174 r tun-d; #X obj 140 196 sel 1; #X obj 140 174 r tun-eb; #X obj 181 196 sel 1; #X obj 181 174 r tun-e; #X obj 221 196 sel 1; #X obj 221 174 r tun-f; #X obj 262 196 sel 1; #X obj 262 174 r tun-gb; #X obj 304 196 sel 1; #X obj 304 174 r tun-g; #X obj 346 196 sel 1; #X obj 346 174 r tun-ab; #X obj 387 196 sel 1; #X obj 387 174 r tun-a; #X obj 429 196 sel 1; #X obj 429 174 r tun-bb; #X obj 471 196 sel 1; #X obj 471 174 r tun-b; #X obj 99 220 2; #X obj 140 220 3; #X obj 181 220 4; #X obj 221 220 5; #X obj 262 220 6; #X obj 304 220 7; #X obj 346 220 8; #X obj 387 220 9; #X obj 429 220 10; #X obj 471 220 11; #X obj 15 245 s tun-trans; #X obj 17 339 s tun-r_c; #X obj 57 339 s tun-r_db; #X obj 101 339 s tun-r_d; #X obj 138 339 s tun-r_eb; #X obj 183 339 s tun-r_e; #X obj 223 338 s tun-r_f; #X obj 260 338 s tun-r_gb; #X obj 306 339 s tun-r_g; #X obj 344 339 s tun-r_ab; #X obj 389 339 s tun-r_a; #X obj 428 339 s tun-r_bb; #X obj 473 339 s tun-r_b; #X obj 18 315 0; #X obj 57 316 0; #X obj 102 315 0; #X obj 141 316 0; #X obj 186 316 0; #X obj 225 317 0; #X obj 270 316 0; #X obj 308 316 0; #X obj 345 315 0; #X obj 385 317 0; #X obj 429 315 0; #X obj 468 316 0; #X obj 60 286 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #X obj 187 289 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #X obj 313 289 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #X obj 429 286 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #X obj 60 268 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #X obj 187 270 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #X obj 313 270 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #X obj 429 267 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #N canvas 0 22 319 434 make_qlist 0; #X obj 25 395 outlet; #X obj 26 18 r tun-read; #X msg 104 18 read qlist2; #X msg 132 379 clear; #X msg 25 363 add \$1 tun-melody \$2; #X msg 25 193 500 7; #X msg 25 213 500 0; #X msg 25 233 250 2; #X msg 25 253 250 4; #X msg 24 273 250 5; #X msg 25 293 250 7; #X msg 25 313 500 0; #X msg 25 332 500 0; #X msg 76 313 500 0; #X msg 76 332 500 0; #X msg 76 193 500 9; #X msg 76 213 500 5; #X msg 76 233 250 7; #X msg 76 253 250 9; #X msg 75 273 250 11; #X msg 76 293 250 12; #X msg 128 254 250 4; #X msg 128 194 500 5; #X msg 128 214 500 7; #X msg 128 234 250 5; #X msg 127 274 250 2; #X msg 128 294 250 4; #X msg 128 314 500 5; #X msg 172 275 250 2; #X msg 128 333 250 4; #X msg 173 195 250 2; #X msg 173 215 250 0; #X msg 173 235 250 2; #X msg 173 255 500 4; #X msg 173 295 250 0; #X msg 173 315 250 -1; #X msg 173 334 250 0; #X msg 223 195 1500 -1000; #X obj 26 62 t b b b b b; #X obj 26 166 t b b b b b b b b; #X obj 44 145 del; #X obj 71 145 t b b b b b b b b; #X obj 102 123 t b b b b b b b b; #X obj 62 123 del 2; #X obj 120 101 t b b b b b b b b; #X obj 80 101 del 3; #X obj 116 78 del 4; #X connect 1 0 38 0; #X connect 3 0 0 0; #X connect 4 0 0 0; #X connect 5 0 4 0; #X connect 6 0 4 0; #X connect 7 0 4 0; #X connect 8 0 4 0; #X connect 9 0 4 0; #X connect 10 0 4 0; #X connect 11 0 4 0; #X connect 12 0 4 0; #X connect 13 0 4 0; #X connect 14 0 4 0; #X connect 15 0 4 0; #X connect 16 0 4 0; #X connect 17 0 4 0; #X connect 18 0 4 0; #X connect 19 0 4 0; #X connect 20 0 4 0; #X connect 21 0 4 0; #X connect 22 0 4 0; #X connect 23 0 4 0; #X connect 24 0 4 0; #X connect 25 0 4 0; #X connect 26 0 4 0; #X connect 27 0 4 0; #X connect 28 0 4 0; #X connect 29 0 4 0; #X connect 30 0 4 0; #X connect 31 0 4 0; #X connect 32 0 4 0; #X connect 33 0 4 0; #X connect 34 0 4 0; #X connect 35 0 4 0; #X connect 36 0 4 0; #X connect 37 0 4 0; #X connect 38 0 39 0; #X connect 38 1 40 0; #X connect 38 2 43 0; #X connect 38 3 45 0; #X connect 38 4 46 0; #X connect 39 0 12 0; #X connect 39 1 11 0; #X connect 39 2 10 0; #X connect 39 3 9 0; #X connect 39 4 8 0; #X connect 39 5 7 0; #X connect 39 6 6 0; #X connect 39 7 5 0; #X connect 40 0 41 0; #X connect 41 0 14 0; #X connect 41 1 13 0; #X connect 41 2 20 0; #X connect 41 3 19 0; #X connect 41 4 18 0; #X connect 41 5 17 0; #X connect 41 6 16 0; #X connect 41 7 15 0; #X connect 42 0 29 0; #X connect 42 1 27 0; #X connect 42 2 26 0; #X connect 42 3 25 0; #X connect 42 4 21 0; #X connect 42 5 24 0; #X connect 42 6 23 0; #X connect 42 7 22 0; #X connect 43 0 42 0; #X connect 44 0 36 0; #X connect 44 1 35 0; #X connect 44 2 34 0; #X connect 44 3 28 0; #X connect 44 4 33 0; #X connect 44 5 32 0; #X connect 44 6 31 0; #X connect 44 7 30 0; #X connect 45 0 44 0; #X connect 46 0 37 0; #X restore 298 43 pd make_qlist; #X connect 0 0 2 1; #X connect 2 0 8 0; #X connect 3 0 7 0; #X connect 5 0 4 0; #X connect 6 0 1 0; #X connect 7 0 6 0; #X connect 7 1 2 0; #X connect 8 0 1 0; #X connect 9 0 10 0; #X connect 10 0 11 0; #X connect 10 0 74 0; #X connect 10 0 59 0; #X connect 10 0 60 0; #X connect 11 0 45 0; #X connect 12 0 13 0; #X connect 12 0 74 0; #X connect 12 0 58 0; #X connect 12 0 60 0; #X connect 13 0 45 0; #X connect 14 0 12 0; #X connect 15 0 35 0; #X connect 15 0 74 0; #X connect 15 0 58 0; #X connect 15 0 59 0; #X connect 16 0 15 0; #X connect 17 0 36 0; #X connect 17 0 75 0; #X connect 17 0 62 0; #X connect 17 0 63 0; #X connect 18 0 17 0; #X connect 19 0 37 0; #X connect 19 0 75 0; #X connect 19 0 61 0; #X connect 19 0 63 0; #X connect 20 0 19 0; #X connect 21 0 38 0; #X connect 21 0 75 0; #X connect 21 0 62 0; #X connect 21 0 61 0; #X connect 22 0 21 0; #X connect 23 0 39 0; #X connect 23 0 76 0; #X connect 23 0 65 0; #X connect 23 0 66 0; #X connect 24 0 23 0; #X connect 25 0 40 0; #X connect 25 0 76 0; #X connect 25 0 64 0; #X connect 25 0 66 0; #X connect 26 0 25 0; #X connect 27 0 41 0; #X connect 27 0 76 0; #X connect 27 0 64 0; #X connect 27 0 65 0; #X connect 28 0 27 0; #X connect 29 0 42 0; #X connect 29 0 77 0; #X connect 29 0 68 0; #X connect 29 0 69 0; #X connect 30 0 29 0; #X connect 31 0 43 0; #X connect 31 0 77 0; #X connect 31 0 67 0; #X connect 31 0 69 0; #X connect 32 0 31 0; #X connect 33 0 44 0; #X connect 33 0 77 0; #X connect 33 0 68 0; #X connect 33 0 67 0; #X connect 34 0 33 0; #X connect 35 0 45 0; #X connect 36 0 45 0; #X connect 37 0 45 0; #X connect 38 0 45 0; #X connect 39 0 45 0; #X connect 40 0 45 0; #X connect 41 0 45 0; #X connect 42 0 45 0; #X connect 43 0 45 0; #X connect 44 0 45 0; #X connect 58 0 46 0; #X connect 59 0 47 0; #X connect 60 0 48 0; #X connect 61 0 49 0; #X connect 62 0 50 0; #X connect 63 0 51 0; #X connect 64 0 52 0; #X connect 65 0 53 0; #X connect 66 0 54 0; #X connect 67 0 55 0; #X connect 68 0 56 0; #X connect 69 0 57 0; #X connect 70 0 58 0; #X connect 70 0 59 0; #X connect 70 0 60 0; #X connect 71 0 61 0; #X connect 71 0 62 0; #X connect 71 0 63 0; #X connect 72 0 64 0; #X connect 72 0 65 0; #X connect 72 0 66 0; #X connect 73 0 67 0; #X connect 73 0 68 0; #X connect 73 0 69 0; #X connect 74 0 71 0; #X connect 74 0 72 0; #X connect 74 0 73 0; #X connect 75 0 70 0; #X connect 75 0 72 0; #X connect 75 0 73 0; #X connect 76 0 71 0; #X connect 76 0 70 0; #X connect 76 0 73 0; #X connect 77 0 72 0; #X connect 77 0 71 0; #X connect 77 0 70 0; #X connect 78 0 4 0; #X restore 180 161 pd melody; #X obj 196 109 line~ 1; #X obj 84 109 line~ 1; #X obj 19 163 *~; #X obj 131 157 *~; #N canvas 0 22 450 300 output 0; #X obj 333 148 t b; #X obj 333 98 f; #X obj 333 48 inlet; #X text 339 17 mute; #X obj 333 173 f; #X msg 421 168 0; #X msg 333 73 bang; #X obj 333 123 moses 1; #X obj 392 98 moses 1; #X obj 78 136 dbtorms; #X obj 392 73 r master-lvl; #X obj 78 30 r master-lvl; #X obj 333 198 s master-lvl; #X obj 15 143 inlet~; #X obj 194 29 inlet; #X text 194 6 level; #X obj 194 93 s master-lvl; #X msg 91 53 set \$1; #X obj 91 78 outlet; #X msg 209 53 \; pd dsp 1; #X obj 78 186 line~; #X obj 15 195 *~; #X obj 15 220 dac~; #X obj 78 161 pack 0 50; #X text 15 120 audio; #X text 91 102 show level; #X obj 421 143 t b; #X obj 15 169 hip~ 1; #X connect 0 0 4 0; #X connect 1 0 7 0; #X connect 2 0 6 0; #X connect 4 0 12 0; #X connect 5 0 12 0; #X connect 6 0 1 0; #X connect 7 0 0 0; #X connect 7 1 26 0; #X connect 8 1 4 1; #X connect 9 0 23 0; #X connect 10 0 1 1; #X connect 10 0 8 0; #X connect 11 0 9 0; #X connect 11 0 17 0; #X connect 13 0 27 0; #X connect 14 0 16 0; #X connect 14 0 19 0; #X connect 17 0 18 0; #X connect 20 0 21 1; #X connect 21 0 22 0; #X connect 21 0 22 1; #X connect 23 0 20 0; #X connect 26 0 5 0; #X connect 27 0 21 0; #X restore 19 225 pd output ---; #X connect 1 0 19 1; #X connect 2 0 19 2; #X connect 5 0 12 0; #X connect 5 1 6 0; #X connect 6 0 16 0; #X connect 8 0 13 0; #X connect 8 1 9 0; #X connect 9 0 15 0; #X connect 12 0 17 0; #X connect 13 0 18 0; #X connect 15 0 18 1; #X connect 16 0 17 1; #X connect 17 0 19 0; #X connect 18 0 19 0; #X connect 19 0 0 0; #X restore 120 32 pd guts; #X obj 24 83 tgl 15 0 tun-equal tun-r_equal Equal 20 8 192 10 -262144 -1 -1 1 1; #X obj 44 182 s tun-center; #X floatatom 24 182 2 0 12; #X connect 9 0 8 0; #X coords 0 1 100 -1 170 200 1; #X restore 8 15 graph; #X text 35 23 Global Controls:; #X text 16 72 Tuning System:; #X text 12 229 To access the patch for; #X text 12 251 a question \, click the; #X text 12 273 appropriate box below.; #N canvas 189 0 429 428 problem1 0; #N canvas 38 335 374 144 graph3 0; #X obj 15 10 bng 15 250 50 0 tun-min2 empty m2 20 8 128 10 -262144 -1 -1; #X obj 15 44 bng 15 250 50 0 tun-maj2 empty M2 20 8 128 10 -262144 -1 -1; #X obj 15 78 bng 15 250 50 0 tun-min3 empty m3 20 8 128 10 -262144 -1 -1; #X obj 15 110 bng 15 250 50 0 tun-maj3 empty M3 20 8 128 10 -262144 -1 -1; #X obj 114 10 bng 15 250 50 0 tun-p4 empty P4 20 8 128 10 -262144 -1 -1; #X obj 114 78 bng 15 250 50 0 tun-p5 empty P5 20 8 128 10 -262144 -1 -1; #X obj 114 110 bng 15 250 50 0 tun-min6 empty m6 20 8 128 10 -262144 -1 -1; #X obj 242 10 bng 15 250 50 0 tun-maj6 empty M6 20 8 128 10 -262144 -1 -1; #X obj 242 44 bng 15 250 50 0 tun-min7 empty m7 20 8 128 10 -262144 -1 -1; #X obj 242 78 bng 15 250 50 0 tun-maj7 empty M7 20 8 128 10 -262144 -1 -1; #X obj 242 110 bng 15 250 50 0 tun-oct empty octave 20 8 128 10 -262144 -1 -1; #X obj 114 44 bng 15 250 50 0 tun-tri empty tritone 20 8 128 10 -262144 -1 -1; #X coords 0 1 100 -1 210 100 1; #X restore 85 87 graph; #X text 9 220 Directions:; #X text 9 251 1) Set the tuning system to equal temperment using the global controls (left).; #X text 9 372 3) List the intervals in order from most consonant to most dissonant.; #X text 9 294 2) Click the buttons above to hear each interval. You will probably want to hear each interval several times and in various orders in order to make proper comparisons. Each time you click a button \, the appropriate interval will play for 2 seconds at some random transposition.; #X text 9 20 1) Rank the major intervals \, P4 \, tritone \, P5 \, and octave in terms of consonance:; #X restore 27 320 pd problem1; #N canvas 189 0 430 428 about 0; #X obj 51 38 tgl 14 0 tun-key tun-off60 c 5 -6 192 8 -262144 -1 -1 0 60; #X obj 65 38 tgl 14 0 tun-key tun-off61 empty 0 -6 192 8 -1 -262144 -1 0 61; #X obj 79 38 tgl 14 0 tun-key tun-off62 d 5 -6 192 8 -262144 -1 -1 0 62; #X obj 107 38 tgl 14 0 tun-key tun-off64 e 5 -6 192 8 -262144 -1 -1 0 64; #X obj 121 38 tgl 14 0 tun-key tun-off65 f 5 -6 192 8 -262144 -1 -1 0 65; #X obj 149 38 tgl 14 0 tun-key tun-off67 g 5 -6 192 8 -262144 -1 -1 0 67; #X obj 177 38 tgl 14 0 tun-key tun-off69 a 5 -6 192 8 -262144 -1 -1 0 69; #X obj 205 38 tgl 14 0 tun-key tun-off71 b 5 -6 192 8 -262144 -1 -1 0 71; #X obj 219 38 tgl 14 0 tun-key tun-off72 c 5 -6 192 8 -262144 -1 -1 0 72; #X obj 247 38 tgl 14 0 tun-key tun-off74 d 5 -6 192 8 -262144 -1 -1 0 74; #X obj 275 38 tgl 14 0 tun-key tun-off76 e 5 -6 192 8 -262144 -1 -1 0 76; #X obj 289 38 tgl 14 0 tun-key tun-off77 f 5 -6 192 8 -262144 -1 -1 0 77; #X obj 93 38 tgl 14 0 tun-key tun-off63 empty 0 -6 192 8 -1 -262144 -1 0 63; #X obj 135 38 tgl 14 0 tun-key tun-off66 empty 0 -6 192 8 -1 -262144 -1 0 66; #X obj 163 38 tgl 14 0 tun-key tun-off68 empty 0 -6 192 8 -1 -262144 -1 0 68; #X obj 233 38 tgl 14 0 tun-key tun-off73 empty 0 -6 192 8 -1 -262144 -1 0 73; #X obj 261 38 tgl 14 0 tun-key tun-off75 empty 0 -6 192 8 -1 -262144 -1 0 75; #X obj 191 38 tgl 14 0 tun-key tun-off70 empty 0 -6 192 8 -1 -262144 -1 0 70; #X obj 317 38 tgl 14 0 tun-key tun-off79 g 5 -6 192 8 -262144 -1 -1 0 79; #X obj 345 38 tgl 14 0 tun-key tun-off81 a 5 -6 192 8 -262144 -1 -1 0 81; #X obj 303 38 tgl 14 0 tun-key tun-off78 empty 0 -6 192 8 -1 -262144 -1 0 78; #X obj 331 38 tgl 14 0 tun-key tun-off80 empty 0 -6 192 8 -1 -262144 -1 0 80; #X obj 372 38 tgl 14 0 tun-key tun-off83 b 5 -6 192 8 -262144 -1 -1 0 83; #X obj 386 38 tgl 14 0 tun-key tun-off84 c 5 -6 192 8 -262144 -1 -1 0 84; #X obj 358 38 tgl 14 0 tun-key tun-off82 empty 0 -6 192 8 -1 -262144 -1 0 82; #X obj 9 38 tgl 14 0 tun-key tun-off57 a 5 -6 192 8 -262144 -1 -1 0 57; #X obj 37 38 tgl 14 0 tun-key tun-off59 b 5 -6 192 8 -262144 -1 -1 0 59; #X obj 23 38 tgl 14 0 tun-key tun-off58 empty 0 -6 192 8 -1 -262144 -1 0 58; #X text 7 66 This patch allows you to compare different tuning systems by switching between Equal Tempered \, Pythagorean \, Meantone \, and Just tuning systems. The base of the tuning system can be adjusted. If the base is set to zero \, the system will be derived from C. If the base is set to two \, the system will be derived from D. For less constrained (or maybe differently constrained?) experimentation than is provided by the rest of the lab \, you can use your mouse to play the monophonic keyboard above.; #X restore 27 295 pd about; #X text 46 186 Base; #N canvas 188 0 430 428 problem3 0; #N canvas 93 320 280 146 graph5 0; #X obj 19 14 tgl 15 0 tun-c tun-r_c C 20 8 192 10 -262144 -1 -1 1 1 ; #X obj 19 64 tgl 15 0 tun-d tun-r_d D 20 8 192 10 -262144 -1 -1 0 1 ; #X obj 104 14 tgl 15 0 tun-eb tun-r_eb E 20 8 192 10 -262144 -1 -1 0 1; #X obj 104 39 tgl 15 0 tun-f tun-r_f F 20 8 192 10 -262144 -1 -1 0 1; #X obj 104 89 tgl 15 0 tun-g tun-r_g G 20 8 192 10 -262144 -1 -1 0 1; #X obj 174 39 tgl 15 0 tun-a tun-r_a A 20 8 192 10 -262144 -1 -1 0 1; #X obj 174 89 tgl 15 0 tun-b tun-r_b B 20 8 192 10 -262144 -1 -1 0 1; #X obj 19 114 bng 15 250 50 0 tun-play empty Play 20 8 128 10 -262144 -1 -1; #X obj 19 39 tgl 15 0 tun-db tun-r_db D-flat 20 8 192 10 -262144 -1 -1 0 1; #X obj 19 89 tgl 15 0 tun-e tun-r_e E-flat 20 8 192 10 -262144 -1 -1 0 1; #X obj 104 64 tgl 15 0 tun-gb tun-r_gb G-flat 20 8 192 10 -262144 -1 -1 0 1; #X obj 174 14 tgl 15 0 tun-ab tun-r_ab A-flat 20 8 192 10 -262144 -1 -1 0 1; #X obj 174 64 tgl 15 0 tun-bb tun-r_bb B-flat 20 8 192 10 -262144 -1 -1 0 1; #X coords 0 1 100 -1 250 120 1; #X restore 82 115 graph; #X text 13 241 Directions:; #X text 12 10 3) Listen to the following melody as it is transposed into different keys and tuning systems. For each case listed below \, say whether or not it is in tune.; #X text 40 55 a) G with a base of 7(G) \, Meantone; #X text 40 74 b) A-flat with a base of 7(G) \, Pythagorean; #X text 40 93 c) C with a base of 7(G) \, Just; #X text 13 305 2) Select a base of 7 in the global controls window to the left.; #X text 13 260 1) Select the appropriate tuning system (a:meantone \, b:phythagorean \, c:just) in the global controls window to the left. ; #X text 13 337 3) In the window above \, click the box to the left of the key to select a key (a:G \, b:A-flat \, c:C).; #X text 13 369 4) Push the play button in the bottom of the window above.; #X text 13 388 5) Decide if the melody sounds like it is in tune. You can push play to repeat if necessary.; #X restore 27 370 pd problem3; #N canvas 189 0 431 428 problem2 0; #N canvas 197 485 286 189 graph3 0; #X obj 40 28 bng 15 250 50 0 tun-eq3 empty Equal 20 8 128 10 -262144 -1 -1; #X obj 40 64 bng 15 250 50 0 tun-pyth3 empty Pythagorean 20 8 128 10 -262144 -1 -1; #X obj 40 99 bng 15 250 50 0 tun-mean3 empty Meantone 20 8 128 10 -262144 -1 -1; #X obj 40 135 bng 15 250 50 0 tun-just3 empty Just 20 8 128 10 -262144 -1 -1; #X coords 0 1 100 -1 130 110 1; #X restore 137 66 graph; #X text 9 218 Directions:; #X text 9 239 1) Click the buttons above to hear each of the major thirds in turn. (They will always be in the key of the base that the system has been derived from.); #X text 9 286 2) If you can't hear the difference \, click through them several times until you can. Sometimes it helps to click the button for the next tuning system while an interval is currently playing. The closer in time the intervals are played together \, the easier it will be to hear the difference.; #X text 9 372 3) List the different major thirds in order from most consonant to most dissonant.; #X text 15 14 2) Rank the following major thirds terms of consonance ; #X restore 27 345 pd problem2; #N canvas 200 0 418 428 help 0; #X obj 11 89 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1 ; #X obj 6 24 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1 ; #X floatatom 11 170 5 0 0; #X obj 11 373 vsl 15 40 0 127 0 0 empty empty empty 0 -8 0 8 -262144 -1 -1 0 1; #X text 6 2 Interface Help; #X text 30 23 Bang; #X text 31 89 Toggle; #X text 52 169 Number Box; #X text 35 371 Slider; #X text 11 41 A bang is a button that has no state (see toggle) and is used to trigger something. Clicking on one should do whatever the label next to it says.; #X text 11 109 A toggle is a button that has state (it either has an X in it or it does not). Toggles are often used as on/off switches \, with an X indicating that something has been turned on.; #X text 11 193 A number box lets you set values. You can enter things into a number box in two ways. The easiest way to enter a specific number is to click in the box \, type the desired number \, then press return. If would like to scroll through settings \, you can click in the box and move the mouse up or down while holding down the (left) button. This will scroll through by ones. To scroll through by hundredths \, hold down the shift key while scrolling. If a box won't let you scroll below or above a particular number \, it has been set not to let you slide past that number for some reason. Wile you can probably type the number in and have it work \, it might be a bad idea \, since the boundary was put there for a reason.; #X text 34 404 the slider bar up or down to change its value.; #X text 34 390 Sliders work a lot like number boxes. Click and drag ; #X restore 27 394 pd help;