#N canvas 693 258 610 518 10; #N canvas 248 449 149 237 align_x 0; #X obj -7 3 inlet; #X obj -7 47 list-drip; #N canvas 0 0 450 300 once 0; #X obj 169 77 inlet; #X msg 214 171 0; #X obj 169 251 outlet; #X obj 169 121 t b a; #X obj 264 78 inlet; #X msg 264 169 1; #X obj 169 202 spigot 1; #X connect 0 0 3 0; #X connect 1 0 6 1; #X connect 3 0 1 0; #X connect 3 1 6 0; #X connect 4 0 5 0; #X connect 5 0 6 1; #X connect 6 0 2 0; #X restore 62 173 pd once; #X msg -7 132 \$2; #X obj -7 214 list prepend; #X obj -7 91 canvasobjectposition 2; #N canvas 0 0 450 300 receive_sorted_lists 0; #X obj 12 10 inlet; #X obj 12 74 outlet; #X obj 12 53 list; #X obj 51 30 r ids_y; #X obj 12 30 t b; #X connect 0 0 4 0; #X connect 2 0 1 0; #X connect 3 0 2 1; #X connect 4 0 2 0; #X restore -7 25 pd receive_sorted_lists; #X msg 62 132 \$1; #X obj -7 111 t l l; #X obj 62 151 t b f; #X obj 62 193 f; #X obj -7 70 t b f; #X connect 0 0 6 0; #X connect 1 0 11 0; #X connect 1 1 2 1; #X connect 2 0 10 0; #X connect 3 0 4 0; #X connect 4 0 5 0; #X connect 5 0 8 0; #X connect 6 0 1 0; #X connect 7 0 9 0; #X connect 8 0 3 0; #X connect 8 1 7 0; #X connect 9 0 2 0; #X connect 9 1 10 1; #X connect 10 0 4 1; #X connect 11 0 5 0; #X connect 11 1 5 1; #X restore 5 40 pd align_x; #N canvas 108 433 158 231 align_y 0; #X obj 3 4 inlet; #X obj 3 52 list-drip; #N canvas 0 0 450 300 once 0; #X obj 169 77 inlet; #X msg 214 171 0; #X obj 169 251 outlet; #X obj 169 121 t b a; #X obj 264 78 inlet; #X msg 264 169 1; #X obj 169 202 spigot 1; #X connect 0 0 3 0; #X connect 1 0 6 1; #X connect 3 0 1 0; #X connect 3 1 6 0; #X connect 4 0 5 0; #X connect 5 0 6 1; #X connect 6 0 2 0; #X restore 42 173 pd once; #X obj 3 93 canvasobjectposition 2; #X obj 3 219 list; #X msg 3 134 \$1; #N canvas 0 0 383 290 receive_sorted_lists 0; #X obj 12 10 inlet; #X obj 12 91 outlet; #X obj 12 64 list; #X obj 33 37 r ids_x; #X obj 12 37 t b; #X connect 0 0 4 0; #X connect 2 0 1 0; #X connect 3 0 2 1; #X connect 4 0 2 0; #X restore 3 29 pd receive_sorted_lists; #X obj 3 114 t l l; #X msg 42 134 \$2; #X obj 42 154 t b f; #X obj 3 73 t b f; #X obj 42 193 f; #X connect 0 0 6 0; #X connect 1 0 10 0; #X connect 1 1 2 1; #X connect 2 0 11 0; #X connect 3 0 7 0; #X connect 4 0 3 0; #X connect 5 0 4 0; #X connect 6 0 1 0; #X connect 7 0 5 0; #X connect 7 1 8 0; #X connect 8 0 9 0; #X connect 9 0 2 0; #X connect 9 1 11 1; #X connect 10 0 3 0; #X connect 10 1 3 1; #X connect 11 0 4 1; #X restore 16 60 pd align_y; #N canvas 745 374 450 300 align_equal_x 0; #X obj 7 81 t b l; #N canvas 613 140 310 300 avg-dist 0; #X obj 19 96 list-minmax; #X obj 96 97 list-len; #X obj 43 153 -; #X obj 43 181 / 1; #X obj 43 201 int; #X obj 57 25 inlet; #X obj 43 249 outlet; #X obj 96 151 - 1; #X obj 41 122 swap; #X obj 57 71 t l l; #X connect 0 0 8 0; #X connect 0 1 8 1; #X connect 1 0 7 0; #X connect 2 0 3 0; #X connect 3 0 4 0; #X connect 4 0 6 0; #X connect 5 0 9 0; #X connect 7 0 3 1; #X connect 8 0 2 0; #X connect 8 1 2 1; #X connect 9 0 0 0; #X connect 9 1 1 0; #X restore 70 131 pd avg-dist; #X obj 7 131 list; #X obj 7 11 inlet; #X obj 7 103 delay 20; #X obj 7 34 t l b; #N canvas 0 0 450 300 receive_sorted_lists 0; #X obj 4 10 inlet; #X obj 4 89 outlet; #X obj 48 89 outlet; #X obj 4 64 list; #X obj 48 64 list; #X obj 49 37 r values_x; #X obj 117 37 r ids_x; #X obj 4 37 t b b; #X connect 0 0 7 0; #X connect 3 0 1 0; #X connect 4 0 2 0; #X connect 5 0 3 1; #X connect 6 0 4 1; #X connect 7 0 4 0; #X connect 7 1 3 0; #X restore 7 56 pd receive_sorted_lists; #N canvas 63 465 597 459 algneq_x 0; #X obj 124 14 inlet; #X obj 13 13 inlet; #X obj 13 35 list-drip; #X obj 82 185 f; #X obj 109 185 + 0; #X msg 97 163 0; #X obj 13 231 t l b; #X obj 13 79 canvasobjectposition 3; #X msg 13 124 \$2; #X obj 13 206 list prepend; #X msg 52 124 \$1; #N canvas 0 0 450 300 once 0; #X obj 169 77 inlet; #X msg 214 171 0; #X obj 169 251 outlet; #X obj 169 121 t b a; #X obj 264 78 inlet; #X msg 264 169 1; #X obj 169 202 spigot 1; #X connect 0 0 3 0; #X connect 1 0 6 1; #X connect 3 0 1 0; #X connect 3 1 6 0; #X connect 4 0 5 0; #X connect 5 0 6 1; #X connect 6 0 2 0; #X restore 32 144 pd once; #X obj 37 164 f; #X obj 13 103 t l b l; #X obj 13 56 t b f; #X connect 0 0 4 1; #X connect 1 0 2 0; #X connect 2 0 14 0; #X connect 2 1 5 0; #X connect 2 1 11 1; #X connect 3 0 4 0; #X connect 3 0 9 1; #X connect 4 0 3 1; #X connect 5 0 4 1; #X connect 6 0 7 0; #X connect 6 1 3 0; #X connect 7 0 13 0; #X connect 8 0 9 0; #X connect 9 0 6 0; #X connect 10 0 12 1; #X connect 11 0 12 0; #X connect 12 0 3 0; #X connect 13 0 8 0; #X connect 13 1 11 0; #X connect 13 2 10 0; #X connect 14 0 7 0; #X connect 14 1 7 1; #X restore 7 152 pd algneq_x; #X connect 0 0 4 0; #X connect 0 1 1 0; #X connect 1 0 7 1; #X connect 2 0 7 0; #X connect 3 0 5 0; #X connect 4 0 2 0; #X connect 5 0 6 0; #X connect 5 1 2 1; #X connect 6 0 0 0; #X connect 6 1 2 1; #X restore 28 85 pd align_equal_x; #N canvas 856 668 450 300 align_equal_y 0; #X obj 13 81 t b l; #N canvas 279 411 450 300 avg-dist 0; #X obj 19 96 list-minmax; #X obj 96 97 list-len; #X obj 43 153 -; #X obj 43 181 / 1; #X obj 43 201 int; #X obj 57 25 inlet; #X obj 43 249 outlet; #X obj 96 151 - 1; #X obj 41 122 swap; #X obj 57 71 t l l; #X connect 0 0 8 0; #X connect 0 1 8 1; #X connect 1 0 7 0; #X connect 2 0 3 0; #X connect 3 0 4 0; #X connect 4 0 6 0; #X connect 5 0 9 0; #X connect 7 0 3 1; #X connect 8 0 2 0; #X connect 8 1 2 1; #X connect 9 0 0 0; #X connect 9 1 1 0; #X restore 76 121 pd avg-dist; #X obj 13 125 list; #X obj 13 11 inlet; #X obj 13 101 delay 20; #X obj 13 35 t l b; #N canvas 0 0 450 300 receive_sorted_lists 0; #X obj 12 10 inlet; #X obj 10 91 outlet; #X obj 54 91 outlet; #X obj 10 64 list; #X obj 54 64 list; #X obj 73 37 r values_y; #X obj 141 37 r ids_y; #X obj 12 37 t b b; #X connect 0 0 7 0; #X connect 3 0 1 0; #X connect 4 0 2 0; #X connect 5 0 3 1; #X connect 6 0 4 1; #X connect 7 0 4 0; #X connect 7 1 3 0; #X restore 13 58 pd receive_sorted_lists; #N canvas 259 535 466 340 algneq_y 0; #X obj 17 8 inlet; #X obj 128 10 inlet; #X obj 17 35 list-drip; #X obj 86 188 f; #X obj 113 188 + 0; #X obj 17 229 t l b; #X obj 17 79 canvasobjectposition 3; #N canvas 0 0 450 300 once 0; #X obj 169 77 inlet; #X msg 214 171 0; #X obj 169 251 outlet; #X obj 169 121 t b a; #X obj 264 78 inlet; #X msg 264 169 1; #X obj 169 202 spigot 1; #X connect 0 0 3 0; #X connect 1 0 6 1; #X connect 3 0 1 0; #X connect 3 1 6 0; #X connect 4 0 5 0; #X connect 5 0 6 1; #X connect 6 0 2 0; #X restore 36 144 pd once; #X obj 17 103 t l b l; #X obj 17 209 list; #X msg 17 124 \$1; #X msg 56 124 \$2; #X obj 17 57 t b f b; #X msg 97 165 0; #X obj 41 165 f; #X connect 0 0 2 0; #X connect 1 0 4 1; #X connect 2 0 12 0; #X connect 2 1 13 0; #X connect 2 1 7 1; #X connect 3 0 4 0; #X connect 3 0 9 1; #X connect 4 0 3 1; #X connect 5 0 6 0; #X connect 5 1 3 0; #X connect 6 0 8 0; #X connect 7 0 14 0; #X connect 8 0 10 0; #X connect 8 1 7 0; #X connect 8 2 11 0; #X connect 9 0 5 0; #X connect 10 0 9 0; #X connect 11 0 14 1; #X connect 12 0 6 0; #X connect 12 1 6 1; #X connect 13 0 4 1; #X connect 14 0 3 0; #X restore 13 150 pd algneq_y; #X connect 0 0 4 0; #X connect 0 1 1 0; #X connect 1 0 7 1; #X connect 2 0 7 0; #X connect 3 0 5 0; #X connect 4 0 2 0; #X connect 5 0 6 0; #X connect 5 1 2 1; #X connect 6 0 0 0; #X connect 6 1 2 1; #X restore 39 105 pd align_equal_y; #X obj 90 197 delay 100; #N canvas 0 0 450 300 align_grid 0; #X obj -131 81 list-drip; #X obj -131 22 inlet; #X obj 18 33 loadbang; #N canvas 0 22 399 321 quantize 0; #X obj 200 172 / 2; #X obj 168 200 >; #X obj 57 219 +; #X obj 57 246 *; #X obj 237 202 t a; #X obj 57 119 t a a; #X obj 162 172 fmod; #X obj 57 172 /; #X obj 57 195 int; #X obj 166 120 t a a a a; #X obj 166 49 inlet; #X obj 24 49 inlet; #X obj 36 295 outlet; #X text 233 159 if remainder is > 1/2 \,; #X text 234 173 quantize to next snappoint; #X text 222 167 <; #X obj 7 219 +; #X obj 7 246 *; #X obj 7 119 t a a; #X obj 7 172 /; #X obj 7 195 int; #X obj 36 270 pack; #X obj 24 82 unpack; #X obj 122 172 fmod; #X obj 130 201 >; #X connect 0 0 1 1; #X connect 0 0 24 1; #X connect 1 0 2 1; #X connect 2 0 3 0; #X connect 3 0 21 1; #X connect 4 0 3 1; #X connect 4 0 17 1; #X connect 5 0 7 0; #X connect 5 1 6 0; #X connect 6 0 1 0; #X connect 7 0 8 0; #X connect 8 0 2 0; #X connect 9 0 7 1; #X connect 9 0 19 1; #X connect 9 1 6 1; #X connect 9 1 23 1; #X connect 9 2 0 0; #X connect 9 3 4 0; #X connect 10 0 9 0; #X connect 11 0 22 0; #X connect 16 0 17 0; #X connect 17 0 21 0; #X connect 18 0 19 0; #X connect 18 1 23 0; #X connect 19 0 20 0; #X connect 20 0 16 0; #X connect 21 0 12 0; #X connect 22 0 18 0; #X connect 22 1 5 0; #X connect 23 0 24 0; #X connect 24 0 16 1; #X restore -131 166 pd quantize; #X obj 18 139 t a; #X obj -131 137 canvasobjectposition 2; #X msg 18 117 15; #X obj -131 107 t b a; #X text 54 72 based on meta-abs by Luke Iannini; #N canvas 0 0 450 300 receive_sorted_lists 0; #X obj 12 10 inlet; #X obj 12 74 outlet; #X obj 12 53 list; #X obj 51 30 r ids_y; #X obj 12 30 t b; #X connect 0 0 4 0; #X connect 2 0 1 0; #X connect 3 0 2 1; #X connect 4 0 2 0; #X restore -131 61 pd receive_sorted_lists; #X connect 0 0 7 0; #X connect 1 0 9 0; #X connect 2 0 6 0; #X connect 3 0 5 0; #X connect 4 0 3 1; #X connect 5 0 3 0; #X connect 6 0 4 0; #X connect 7 0 5 0; #X connect 7 1 5 1; #X connect 9 0 0 0; #X restore 51 130 pd align_grid; #N canvas 798 447 450 300 align_mouse_equal_x 0; #X obj 3 81 t b l; #N canvas 985 206 310 300 avg-dist 0; #X obj 19 76 list-minmax; #X obj 96 77 list-len; #X obj 43 161 / 1; #X obj 43 181 int; #X obj 57 25 inlet; #X obj 82 269 outlet; #X obj 96 131 - 1; #X obj 57 51 t l l; #X obj 141 25 inlet; #X obj 43 133 +; #X obj 22 103 * -1; #X msg 130 204 1; #X obj 43 203 moses 1; #X obj 96 182 sel 0; #X msg 96 203 0; #X obj 58 244 f; #X obj 43 222 t b; #X connect 0 0 10 0; #X connect 1 0 6 0; #X connect 2 0 3 0; #X connect 3 0 12 0; #X connect 4 0 7 0; #X connect 6 0 2 1; #X connect 6 0 13 0; #X connect 7 0 0 0; #X connect 7 1 1 0; #X connect 8 0 9 1; #X connect 9 0 2 0; #X connect 10 0 9 0; #X connect 11 0 15 1; #X connect 12 0 16 0; #X connect 12 1 5 0; #X connect 13 0 14 0; #X connect 13 1 11 0; #X connect 14 0 15 1; #X connect 15 0 5 0; #X connect 16 0 15 0; #X restore 66 124 pd avg-dist; #X obj 3 124 list; #X obj 3 11 inlet; #N canvas 612 135 450 300 receive_sorted_lists 0; #X obj 12 10 inlet; #X obj 12 111 outlet; #X obj 56 111 outlet; #X obj 12 84 list; #X obj 56 84 list; #X obj 97 27 r values_x; #X obj 174 27 r ids_x; #X obj 12 37 t b b; #X connect 0 0 7 0; #X connect 3 0 1 0; #X connect 4 0 2 0; #X connect 5 0 3 1; #X connect 6 0 4 1; #X connect 7 0 4 0; #X connect 7 1 3 0; #X restore 3 59 pd receive_sorted_lists; #X obj 3 37 t b b f; #N canvas 63 465 286 317 algneq_x 0; #X obj 124 14 inlet; #X obj 13 13 inlet; #X obj 13 35 list-drip; #X obj 82 205 f; #X obj 109 205 + 0; #X msg 97 163 0; #X obj 13 271 t l b; #X obj 13 79 canvasobjectposition 3; #X msg 13 124 \$2; #X obj 13 246 list prepend; #X msg 52 124 \$1; #N canvas 0 0 450 300 once 0; #X obj 169 77 inlet; #X msg 214 171 0; #X obj 169 251 outlet; #X obj 169 121 t b a; #X obj 264 78 inlet; #X msg 264 169 1; #X obj 169 202 spigot 1; #X connect 0 0 3 0; #X connect 1 0 6 1; #X connect 3 0 1 0; #X connect 3 1 6 0; #X connect 4 0 5 0; #X connect 5 0 6 1; #X connect 6 0 2 0; #X restore 32 144 pd once; #X obj 37 164 f; #X obj 13 103 t l b l; #X obj 13 56 t b f; #X obj 13 205 spigot 1; #X msg 203 86 0; #X obj 216 61 t b; #X msg 176 85 1; #X obj 162 137 spigot; #X obj 162 158 f; #X obj 162 178 t f b; #X obj 176 41 sel 0; #X obj 176 61 t b; #X obj 162 117 t b; #X obj 207 137 r mouse_x; #X connect 0 0 4 1; #X connect 0 0 15 1; #X connect 0 0 22 0; #X connect 1 0 2 0; #X connect 2 0 14 0; #X connect 2 1 5 0; #X connect 2 1 11 1; #X connect 3 0 4 0; #X connect 3 0 9 1; #X connect 4 0 3 1; #X connect 5 0 4 1; #X connect 6 0 7 0; #X connect 6 1 3 0; #X connect 7 0 13 0; #X connect 7 0 24 0; #X connect 8 0 15 0; #X connect 9 0 6 0; #X connect 10 0 12 1; #X connect 11 0 12 0; #X connect 12 0 3 0; #X connect 13 0 8 0; #X connect 13 1 11 0; #X connect 13 2 10 0; #X connect 14 0 7 0; #X connect 14 1 7 1; #X connect 15 0 9 0; #X connect 16 0 19 1; #X connect 17 0 16 0; #X connect 18 0 19 1; #X connect 19 0 20 0; #X connect 20 0 21 0; #X connect 21 0 9 0; #X connect 21 1 3 0; #X connect 22 0 23 0; #X connect 22 1 17 0; #X connect 23 0 18 0; #X connect 24 0 19 0; #X connect 25 0 20 1; #X restore 3 146 pd algneq_x; #X obj 3 104 delay 20; #X connect 0 0 7 0; #X connect 0 1 1 0; #X connect 1 0 6 1; #X connect 2 0 6 0; #X connect 3 0 5 0; #X connect 4 0 0 0; #X connect 4 1 2 1; #X connect 5 0 4 0; #X connect 5 1 2 1; #X connect 5 2 1 1; #X connect 7 0 2 0; #X restore 74 243 pd align_mouse_equal_x; #X text 267 68 USAGE:; #X text 267 19 automatically align objects by x- or y- axis; #X text 267 99 you want to use it.; #X text 267 129 for aligning press "|" (pipe) and; #X text 267 179 press "#" (grid metaphor) and; #X text 267 189 "x" for horizontal or; #X text 267 199 "y" for vertical; #X text 7 378 hit "ESC" after one of this actions; #X text 267 239 "g" place objects on a grid (by Luke Iannini); #N canvas 745 374 450 300 align_equal_x 0; #X obj 7 81 t b l; #N canvas 613 140 310 300 avg-dist 0; #X obj 19 96 list-minmax; #X obj 96 97 list-len; #X obj 43 153 -; #X obj 43 181 / 1; #X obj 43 201 int; #X obj 57 25 inlet; #X obj 43 249 outlet; #X obj 96 151 - 1; #X obj 41 122 swap; #X obj 57 71 t l l; #X connect 0 0 8 0; #X connect 0 1 8 1; #X connect 1 0 7 0; #X connect 2 0 3 0; #X connect 3 0 4 0; #X connect 4 0 6 0; #X connect 5 0 9 0; #X connect 7 0 3 1; #X connect 8 0 2 0; #X connect 8 1 2 1; #X connect 9 0 0 0; #X connect 9 1 1 0; #X restore 70 131 pd avg-dist; #X obj 7 131 list; #X obj 7 11 inlet; #X obj 7 103 delay 20; #X obj 7 34 t l b; #N canvas 0 0 450 300 receive_sorted_lists 0; #X obj 4 10 inlet; #X obj 4 89 outlet; #X obj 48 89 outlet; #X obj 4 64 list; #X obj 48 64 list; #X obj 49 37 r values_x; #X obj 117 37 r ids_x; #X obj 4 37 t b b; #X connect 0 0 7 0; #X connect 3 0 1 0; #X connect 4 0 2 0; #X connect 5 0 3 1; #X connect 6 0 4 1; #X connect 7 0 4 0; #X connect 7 1 3 0; #X restore 7 56 pd receive_sorted_lists; #N canvas 935 391 597 459 algneq_x 0; #X obj 124 14 inlet; #X obj 13 13 inlet; #X obj 13 35 list-drip; #X obj 82 185 f; #X obj 109 185 + 0; #X msg 97 163 0; #X obj 13 231 t l b; #X obj 13 79 canvasobjectposition 3; #X msg 13 124 \$2; #X obj 13 206 list prepend; #X msg 52 124 \$1; #N canvas 0 0 450 300 once 0; #X obj 169 77 inlet; #X msg 214 171 0; #X obj 169 251 outlet; #X obj 169 121 t b a; #X obj 264 78 inlet; #X msg 264 169 1; #X obj 169 202 spigot 1; #X connect 0 0 3 0; #X connect 1 0 6 1; #X connect 3 0 1 0; #X connect 3 1 6 0; #X connect 4 0 5 0; #X connect 5 0 6 1; #X connect 6 0 2 0; #X restore 32 144 pd once; #X obj 37 164 f; #X obj 13 103 t l b l; #X obj 13 56 t b f; #X connect 0 0 4 1; #X connect 1 0 2 0; #X connect 2 0 14 0; #X connect 2 1 5 0; #X connect 2 1 11 1; #X connect 3 0 4 0; #X connect 3 0 9 1; #X connect 4 0 3 1; #X connect 5 0 4 1; #X connect 6 0 7 0; #X connect 6 1 3 0; #X connect 7 0 13 0; #X connect 8 0 9 0; #X connect 9 0 6 0; #X connect 10 0 12 1; #X connect 11 0 12 0; #X connect 12 0 3 0; #X connect 13 0 8 0; #X connect 13 1 11 0; #X connect 13 2 10 0; #X connect 14 0 7 0; #X connect 14 1 7 1; #X restore 7 152 pd algneq_x; #X connect 0 0 4 0; #X connect 0 1 1 0; #X connect 1 0 7 1; #X connect 2 0 7 0; #X connect 3 0 5 0; #X connect 4 0 2 0; #X connect 5 0 6 0; #X connect 5 1 2 1; #X connect 6 0 0 0; #X connect 6 1 2 1; #X restore 63 177 pd align_equal_x; #N canvas 856 668 450 300 align_equal_y 0; #X obj 13 81 t b l; #N canvas 279 411 450 300 avg-dist 0; #X obj 19 96 list-minmax; #X obj 96 97 list-len; #X obj 43 153 -; #X obj 43 181 / 1; #X obj 43 201 int; #X obj 57 25 inlet; #X obj 43 249 outlet; #X obj 96 151 - 1; #X obj 41 122 swap; #X obj 57 71 t l l; #X connect 0 0 8 0; #X connect 0 1 8 1; #X connect 1 0 7 0; #X connect 2 0 3 0; #X connect 3 0 4 0; #X connect 4 0 6 0; #X connect 5 0 9 0; #X connect 7 0 3 1; #X connect 8 0 2 0; #X connect 8 1 2 1; #X connect 9 0 0 0; #X connect 9 1 1 0; #X restore 76 121 pd avg-dist; #X obj 13 125 list; #X obj 13 11 inlet; #X obj 13 101 delay 20; #X obj 13 35 t l b; #N canvas 72 389 450 300 receive_sorted_lists 0; #X obj 12 10 inlet; #X obj 10 91 outlet; #X obj 54 91 outlet; #X obj 10 64 list; #X obj 54 64 list; #X obj 73 37 r values_y; #X obj 12 37 t b b b b; #X obj 141 37 r ids_x; #X connect 0 0 6 0; #X connect 3 0 1 0; #X connect 4 0 2 0; #X connect 5 0 3 1; #X connect 6 0 4 0; #X connect 6 1 3 0; #X connect 7 0 4 1; #X restore 13 58 pd receive_sorted_lists; #N canvas 259 535 466 340 algneq_y 0; #X obj 17 8 inlet; #X obj 128 10 inlet; #X obj 17 35 list-drip; #X obj 86 188 f; #X obj 113 188 + 0; #X obj 17 229 t l b; #X obj 17 79 canvasobjectposition 3; #N canvas 0 0 450 300 once 0; #X obj 169 77 inlet; #X msg 214 171 0; #X obj 169 251 outlet; #X obj 169 121 t b a; #X obj 264 78 inlet; #X msg 264 169 1; #X obj 169 202 spigot 1; #X connect 0 0 3 0; #X connect 1 0 6 1; #X connect 3 0 1 0; #X connect 3 1 6 0; #X connect 4 0 5 0; #X connect 5 0 6 1; #X connect 6 0 2 0; #X restore 36 144 pd once; #X obj 17 103 t l b l; #X obj 17 209 list; #X msg 17 124 \$1; #X msg 56 124 \$2; #X obj 17 57 t b f b; #X msg 97 165 0; #X obj 41 165 f; #X connect 0 0 2 0; #X connect 1 0 4 1; #X connect 2 0 12 0; #X connect 2 1 13 0; #X connect 2 1 7 1; #X connect 3 0 4 0; #X connect 3 0 9 1; #X connect 4 0 3 1; #X connect 5 0 6 0; #X connect 5 1 3 0; #X connect 6 0 8 0; #X connect 7 0 14 0; #X connect 8 0 10 0; #X connect 8 1 7 0; #X connect 8 2 11 0; #X connect 9 0 5 0; #X connect 10 0 9 0; #X connect 11 0 14 1; #X connect 12 0 6 0; #X connect 12 1 6 1; #X connect 13 0 4 1; #X connect 14 0 3 0; #X restore 13 150 pd algneq_y; #X connect 0 0 4 0; #X connect 0 1 1 0; #X connect 1 0 7 1; #X connect 2 0 7 0; #X connect 3 0 5 0; #X connect 4 0 2 0; #X connect 5 0 6 0; #X connect 5 1 2 1; #X connect 6 0 0 0; #X connect 6 1 2 1; #X restore 90 217 pd align_equal_y; #X obj 63 157 t b b; #N canvas 1074 410 450 300 align_mouse_equal_y 0; #X obj 3 81 t b l; #N canvas 613 188 310 359 avg-dist 0; #X obj 19 96 list-minmax; #X obj 96 97 list-len; #X obj 43 181 / 1; #X obj 57 25 inlet; #X obj 82 289 outlet; #X obj 96 151 - 1; #X obj 57 71 t l l; #X obj 141 25 inlet; #X obj 43 153 +; #X obj 22 123 * -1; #X obj 43 201 int; #X msg 130 224 1; #X obj 43 223 moses 1; #X obj 96 202 sel 0; #X msg 96 223 0; #X obj 58 264 f; #X obj 43 242 t b; #X connect 0 0 9 0; #X connect 1 0 5 0; #X connect 2 0 10 0; #X connect 3 0 6 0; #X connect 5 0 2 1; #X connect 5 0 13 0; #X connect 6 0 0 0; #X connect 6 1 1 0; #X connect 7 0 8 1; #X connect 8 0 2 0; #X connect 9 0 8 0; #X connect 10 0 12 0; #X connect 11 0 15 1; #X connect 12 0 16 0; #X connect 12 1 4 0; #X connect 13 0 14 0; #X connect 13 1 11 0; #X connect 14 0 15 1; #X connect 15 0 4 0; #X connect 16 0 15 0; #X restore 66 124 pd avg-dist; #X obj 3 124 list; #X obj 3 11 inlet; #X obj 3 37 t b b f; #N canvas 425 530 319 340 algneq_y 0; #X obj 17 8 inlet; #X obj 128 10 inlet; #X obj 17 35 list-drip; #X obj 86 208 f; #X obj 113 208 + 0; #X obj 17 259 t l b; #X obj 17 79 canvasobjectposition 3; #N canvas 0 0 450 300 once 0; #X obj 169 77 inlet; #X msg 214 171 0; #X obj 169 251 outlet; #X obj 169 121 t b a; #X obj 264 78 inlet; #X msg 264 169 1; #X obj 169 202 spigot 1; #X connect 0 0 3 0; #X connect 1 0 6 1; #X connect 3 0 1 0; #X connect 3 1 6 0; #X connect 4 0 5 0; #X connect 5 0 6 1; #X connect 6 0 2 0; #X restore 36 144 pd once; #X obj 17 103 t l b l; #X obj 17 239 list; #X msg 17 124 \$1; #X msg 56 124 \$2; #X obj 17 57 t b f b; #X msg 97 165 0; #X obj 41 165 f; #X obj 17 207 spigot; #X msg 213 86 0; #X obj 226 61 t b; #X msg 186 85 1; #X obj 172 137 spigot; #X obj 172 158 f; #X obj 172 178 t f b; #X obj 186 41 sel 0; #X obj 186 61 t b; #X obj 172 117 t b; #X obj 217 137 r mouse_y; #X connect 0 0 2 0; #X connect 1 0 4 1; #X connect 1 0 22 0; #X connect 1 0 15 1; #X connect 2 0 12 0; #X connect 2 1 13 0; #X connect 2 1 7 1; #X connect 3 0 4 0; #X connect 3 0 9 1; #X connect 4 0 3 1; #X connect 5 0 6 0; #X connect 5 1 3 0; #X connect 6 0 8 0; #X connect 6 0 24 0; #X connect 7 0 14 0; #X connect 8 0 10 0; #X connect 8 1 7 0; #X connect 8 2 11 0; #X connect 9 0 5 0; #X connect 10 0 15 0; #X connect 11 0 14 1; #X connect 12 0 6 0; #X connect 12 1 6 1; #X connect 13 0 4 1; #X connect 14 0 3 0; #X connect 15 0 9 0; #X connect 16 0 19 1; #X connect 17 0 16 0; #X connect 18 0 19 1; #X connect 19 0 20 0; #X connect 20 0 21 0; #X connect 21 0 9 0; #X connect 21 1 3 0; #X connect 22 0 23 0; #X connect 22 1 17 0; #X connect 23 0 18 0; #X connect 24 0 19 0; #X connect 25 0 20 1; #X restore 3 145 pd algneq_y; #N canvas 1009 314 450 300 receive_sorted_lists 0; #X obj 12 10 inlet; #X obj 10 111 outlet; #X obj 54 111 outlet; #X obj 10 84 list; #X obj 54 84 list; #X obj 105 28 r values_y; #X obj 174 27 r ids_y; #X obj 12 37 t b b; #X connect 0 0 7 0; #X connect 3 0 1 0; #X connect 4 0 2 0; #X connect 5 0 3 1; #X connect 6 0 4 1; #X connect 7 0 4 0; #X connect 7 1 3 0; #X restore 3 59 pd receive_sorted_lists; #X obj 3 103 delay 20; #X connect 0 0 7 0; #X connect 0 1 1 0; #X connect 1 0 5 1; #X connect 2 0 5 0; #X connect 3 0 4 0; #X connect 4 0 6 0; #X connect 4 1 2 1; #X connect 4 2 1 1; #X connect 6 0 0 0; #X connect 6 1 2 1; #X connect 7 0 2 0; #X restore 86 263 pd align_mouse_equal_y; #X text 267 209 (! since ther is no way to get the size of an; #X text 267 219 object this means not space between.); #X text 267 139 "x" for left-align (oriented on top most obj) or; #X text 267 149 "y" for top-align (oriented on left most obj); #N canvas 406 28 741 908 connect 0; #X obj 94 14 inlet; #X obj 139 68 t b l l b; #X msg 266 106 0; #X msg 113 126 0; #X msg 113 107 1; #X msg 266 125 1; #X obj 48 129 spigot 0; #X obj 201 128 spigot 1; #N canvas 622 105 466 596 list-div-mean 0; #X obj 31 32 inlet; #X obj 10 499 outlet; #X obj 100 499 outlet; #X msg 176 374 0; #X msg 112 354 0; #X msg 112 374 1; #X msg 176 354 1; #X obj 221 120 list-drip; #X msg 221 197 \$2; #X obj 10 466 list; #X obj 221 217 list; #X obj 260 217 list; #X obj 221 177 canvasobjectposition 3; #X obj 31 78 t l l b; #X obj 221 140 t b f; #X obj 100 466 list; #X obj 200 237 list; #X obj 31 120 list-drip; #X obj 50 177 canvasobjectposition 3; #X obj 75 403 spigot; #X obj 31 403 spigot; #X obj 31 436 list; #X obj 70 436 list; #X obj 121 436 list; #X obj 160 436 list; #X obj 31 140 t f b f; #X obj 149 329 sel 0 1; #X msg 50 197 \$2; #X obj 149 311 >= 1; #X obj 270 417 t b b; #X floatatom 313 223 5 0 0 0 - - -; #X obj 200 254 list-minmax; #X obj 200 272 pack; #X obj 200 290 list-mean; #X connect 0 0 13 0; #X connect 3 0 19 1; #X connect 4 0 20 1; #X connect 5 0 20 1; #X connect 6 0 19 1; #X connect 7 0 14 0; #X connect 7 1 16 0; #X connect 8 0 10 0; #X connect 8 0 30 0; #X connect 9 0 1 0; #X connect 10 0 11 0; #X connect 10 0 16 1; #X connect 11 0 10 1; #X connect 12 0 8 0; #X connect 13 0 17 0; #X connect 13 1 7 0; #X connect 13 2 10 1; #X connect 13 2 23 1; #X connect 13 2 21 1; #X connect 13 2 15 1; #X connect 13 2 9 1; #X connect 14 0 12 0; #X connect 14 1 12 1; #X connect 15 0 2 0; #X connect 16 0 31 0; #X connect 17 0 25 0; #X connect 17 1 29 0; #X connect 18 0 27 0; #X connect 19 0 23 0; #X connect 20 0 21 0; #X connect 21 0 22 0; #X connect 21 0 9 1; #X connect 22 0 21 1; #X connect 23 0 24 0; #X connect 23 0 15 1; #X connect 24 0 23 1; #X connect 25 0 20 0; #X connect 25 0 19 0; #X connect 25 1 18 0; #X connect 25 2 18 1; #X connect 26 0 3 0; #X connect 26 0 5 0; #X connect 26 1 4 0; #X connect 26 1 6 0; #X connect 27 0 28 0; #X connect 28 0 26 0; #X connect 29 0 9 0; #X connect 29 1 15 0; #X connect 31 0 32 0; #X connect 31 1 32 1; #X connect 32 0 33 0; #X connect 33 0 28 1; #X restore 235 268 pd list-div-mean; #X obj 201 158 t l b; #X obj 266 85 delay 1; #X obj 201 177 list split 1; #X obj 48 178 list split 1; #X obj 48 348 list; #X obj 634 348 list; #X obj 634 413 spigot; #X obj 48 413 spigot; #X obj 634 435 list-drip; #X obj 48 435 list-drip; #X obj 48 553 list; #X obj 634 558 list; #X obj 634 499 mod; #X obj 634 480 f; #X obj 659 480 + 1; #X msg 190 339 0; #X obj 634 537 t b f; #X obj 604 579 list split; #X obj 632 598 list split 1; #X obj 632 740 pack 0 0 0 0; #X obj 634 461 t b f; #X obj 258 820 sendcanvas 2; #X obj 382 581 - 1; #X obj 267 552 - 1; #X msg 258 800 connect \$1 \$2 \$3 \$4; #X obj 48 493 mod; #X obj 48 474 f; #X obj 73 474 + 1; #X obj 48 531 t b f; #X obj 18 579 list split; #X obj 46 598 list split 1; #X obj 48 455 t b f; #X obj 73 733 pack 0 0 0 0; #X obj 355 531 r \$0-inlet; #X obj 267 531 r \$0-outlet; #X obj 632 711 spigot; #X obj 73 706 spigot; #X msg 190 659 0; #X msg 355 639 1; #X obj 48 198 t b f; #N canvas 1065 466 450 300 sortbyx 0; #X obj 69 18 inlet; #X obj 69 60 list-drip; #X obj 69 196 list; #X obj 108 196 list; #X obj -72 176 list; #X obj -33 176 list; #X msg -72 135 \$1; #X obj -93 223 list; #X obj 120 138 t b b; #X obj 49 272 outlet; #X obj 69 38 t l b; #X obj 69 80 t f b f; #X obj 48 223 list; #X obj -72 114 canvasobjectposition 3; #N canvas 0 0 450 300 2list-sort 0; #X obj 155 128 sort; #X obj 128 54 inlet; #X obj 237 54 inlet; #X obj 155 239 outlet; #X obj 216 137 list; #X obj 216 239 outlet; #X obj 128 91 t b a; #N canvas 0 0 450 300 list-sort-id 0; #X obj 86 22 inlet; #X obj 185 22 inlet; #X obj 111 257 outlet; #X obj 214 212 list; #X obj 164 96 list-drip; #X obj 111 234 list; #X obj 104 166 list split; #X obj 164 77 list; #X obj 104 144 list; #X obj 164 116 t b a; #X obj 132 189 list split 1; #X obj 132 212 list prepend; #X obj 86 45 t b b a; #X connect 0 0 12 0; #X connect 1 0 7 1; #X connect 3 0 11 1; #X connect 4 0 9 0; #X connect 4 1 5 0; #X connect 5 0 2 0; #X connect 6 1 10 0; #X connect 7 0 4 0; #X connect 8 0 6 0; #X connect 9 0 8 0; #X connect 9 1 6 1; #X connect 10 0 11 0; #X connect 11 0 3 0; #X connect 11 0 5 1; #X connect 12 0 7 0; #X connect 12 1 11 1; #X connect 12 2 8 1; #X restore 216 196 pd list-sort-id; #X connect 0 0 3 0; #X connect 0 1 7 1; #X connect 1 0 6 0; #X connect 2 0 4 1; #X connect 4 0 7 0; #X connect 6 0 4 0; #X connect 6 1 0 0; #X connect 7 0 5 0; #X restore -26 247 pd 2list-sort; #X connect 0 0 10 0; #X connect 1 0 11 0; #X connect 1 1 8 0; #X connect 2 0 3 0; #X connect 2 0 12 1; #X connect 3 0 2 1; #X connect 4 0 5 0; #X connect 4 0 7 1; #X connect 5 0 4 1; #X connect 6 0 4 0; #X connect 7 0 14 0; #X connect 8 0 7 0; #X connect 8 1 12 0; #X connect 10 0 1 0; #X connect 10 1 2 1; #X connect 10 1 4 1; #X connect 10 1 7 1; #X connect 10 1 12 1; #X connect 11 0 2 0; #X connect 11 1 13 0; #X connect 11 2 13 1; #X connect 12 0 14 1; #X connect 13 0 6 0; #X connect 14 1 9 0; #X restore 69 310 pd sortbyx; #N canvas 1065 466 450 300 sortbyx 0; #X obj 69 18 inlet; #X obj 69 60 list-drip; #X obj 69 196 list; #X obj 108 196 list; #X obj -72 176 list; #X obj -33 176 list; #X msg -72 135 \$1; #X obj -93 223 list; #X obj 120 138 t b b; #X obj 77 272 outlet; #X obj 69 38 t l b; #X obj 69 80 t f b f; #X obj 48 223 list; #X obj -72 114 canvasobjectposition 3; #N canvas 0 0 450 300 2list-sort 0; #X obj 155 128 sort; #X obj 128 54 inlet; #X obj 237 54 inlet; #X obj 155 239 outlet; #X obj 216 137 list; #X obj 216 239 outlet; #X obj 128 91 t b a; #N canvas 0 0 450 300 list-sort-id 0; #X obj 86 22 inlet; #X obj 185 22 inlet; #X obj 111 257 outlet; #X obj 214 212 list; #X obj 164 96 list-drip; #X obj 111 234 list; #X obj 104 166 list split; #X obj 164 77 list; #X obj 104 144 list; #X obj 164 116 t b a; #X obj 132 189 list split 1; #X obj 132 212 list prepend; #X obj 86 45 t b b a; #X connect 0 0 12 0; #X connect 1 0 7 1; #X connect 3 0 11 1; #X connect 4 0 9 0; #X connect 4 1 5 0; #X connect 5 0 2 0; #X connect 6 1 10 0; #X connect 7 0 4 0; #X connect 8 0 6 0; #X connect 9 0 8 0; #X connect 9 1 6 1; #X connect 10 0 11 0; #X connect 11 0 3 0; #X connect 11 0 5 1; #X connect 12 0 7 0; #X connect 12 1 11 1; #X connect 12 2 8 1; #X restore 216 200 pd list-sort-id; #X connect 0 0 3 0; #X connect 0 1 7 1; #X connect 1 0 6 0; #X connect 2 0 4 1; #X connect 4 0 7 0; #X connect 6 0 4 0; #X connect 6 1 0 0; #X connect 7 0 5 0; #X restore 2 247 pd 2list-sort; #X connect 0 0 10 0; #X connect 1 0 11 0; #X connect 1 1 8 0; #X connect 2 0 3 0; #X connect 2 0 12 1; #X connect 3 0 2 1; #X connect 4 0 5 0; #X connect 4 0 7 1; #X connect 5 0 4 1; #X connect 6 0 4 0; #X connect 7 0 14 0; #X connect 8 0 7 0; #X connect 8 1 12 0; #X connect 10 0 1 0; #X connect 10 1 2 1; #X connect 10 1 4 1; #X connect 10 1 7 1; #X connect 10 1 12 1; #X connect 11 0 2 0; #X connect 11 1 13 0; #X connect 11 2 13 1; #X connect 12 0 14 1; #X connect 13 0 6 0; #X connect 14 1 9 0; #X restore 655 300 pd sortbyx; #X msg 73 752 \$3 \$2 \$1 \$4; #X obj 94 38 route float list symbol; #X symbolatom 459 104 10 0 0 0 - - -; #N canvas 512 439 450 300 open_bigger_a_zero_closes_both 0; #X obj 52 231 outlet; #X obj 135 231 outlet; #X msg 135 194 0; #X msg 87 195 0; #X obj 113 169 sel 1 0; #X obj 67 144 * 1; #X obj 177 144 * 1; #X obj 163 194 f; #X obj 52 197 f; #X obj 56 18 inlet; #X obj 166 18 inlet; #X obj 151 54 f; #X obj 113 143 <; #X obj 136 87 t f f f; #X obj 56 88 t b f f b f; #X connect 2 0 1 0; #X connect 3 0 0 0; #X connect 4 0 2 0; #X connect 4 0 8 0; #X connect 4 1 3 0; #X connect 4 1 7 0; #X connect 5 0 8 1; #X connect 6 0 7 1; #X connect 7 0 1 0; #X connect 8 0 0 0; #X connect 9 0 14 0; #X connect 10 0 11 1; #X connect 11 0 13 0; #X connect 12 0 4 0; #X connect 13 0 12 0; #X connect 13 1 5 1; #X connect 13 2 6 0; #X connect 14 1 12 1; #X connect 14 2 5 0; #X connect 14 3 11 0; #X connect 14 4 6 1; #X restore 235 376 pd open_bigger_a_zero_closes_both; #X obj 486 226 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1; #X msg 486 194 1; #X msg 514 193 0; #X obj 382 682 f; #X obj 235 333 list length; #X obj 328 332 list length; #X obj 221 680 f; #X obj 248 680 + 0; #X obj 410 682 + 0; #X obj 75 228 s \$0-inlet; #X obj 201 228 s \$0-outlet; #X obj 355 558 t b f; #X obj 236 579 t b f; #X obj 236 602 f; #N canvas 0 0 450 300 multiple 0; #X obj 162 36 inlet; #X obj 255 35 inlet; #X obj 339 29 inlet; #X obj 162 212 outlet; #X obj 255 212 outlet; #X obj 162 124 == 1; #X obj 162 173 *; #X obj 255 123 == 1; #X obj 255 172 *; #X obj 162 75 f; #X obj 255 74 f; #X obj 190 103 t b b f; #X connect 0 0 9 1; #X connect 1 0 10 1; #X connect 2 0 11 0; #X connect 5 0 6 0; #X connect 6 0 3 0; #X connect 7 0 8 0; #X connect 8 0 4 0; #X connect 9 0 5 0; #X connect 10 0 7 0; #X connect 11 0 9 0; #X connect 11 1 10 0; #X connect 11 2 6 1; #X connect 11 2 8 1; #X restore 236 501 pd multiple; #X obj 461 247 spigot; #X obj 459 149 t b b; #X obj 46 617 t b f; #X obj 632 614 t f b; #X obj 516 233 list length; #X obj 482 418 == 1; #X obj 516 418 == 2; #X obj 235 196 t l l; #X obj 494 441 +; #X obj 494 461 == 2; #X obj 461 510 spigot; #X obj 500 656 f; #X obj 527 656 + 1; #X obj 461 552 t b b b; #X obj 480 706 f; #X obj 507 706 + 1; #X obj 405 800 list; #X obj 258 779 list; #X obj 632 661 f; #X obj 435 800 list; #N canvas 78 401 450 300 undo 0; #X obj 223 32 inlet; #X obj 113 30 r \$0-active_undo; #X obj 268 32 inlet; #X obj 141 118 list; #X obj 141 88 spigot; #X obj 141 143 list-drip; #X obj 141 162 repack 4; #X msg 141 181 disconnect \$1 \$2 \$3 \$4; #X obj 141 201 sendcanvas 3; #X connect 0 0 4 0; #X connect 1 0 4 1; #X connect 2 0 3 1; #X connect 3 0 5 0; #X connect 4 0 3 0; #X connect 5 0 6 0; #X connect 6 0 7 0; #X connect 7 0 8 0; #X restore 484 839 pd undo; #X msg 48 228 1; #X obj 48 255 s \$0-active_undo; #X obj 459 128 sel m ESC; #X obj 514 169 t b; #X obj 75 65 t b b b; #X obj 272 735 t b; #X connect 0 0 52 0; #X connect 1 1 6 0; #X connect 1 2 7 0; #X connect 1 3 24 0; #X connect 2 0 7 1; #X connect 3 0 6 1; #X connect 4 0 6 1; #X connect 5 0 7 1; #X connect 6 0 12 0; #X connect 7 0 9 0; #X connect 8 0 49 0; #X connect 8 0 59 0; #X connect 8 1 50 0; #X connect 8 1 60 0; #X connect 9 0 11 0; #X connect 9 1 10 0; #X connect 10 0 4 0; #X connect 10 0 2 0; #X connect 11 0 65 0; #X connect 11 0 94 0; #X connect 11 1 77 0; #X connect 12 0 48 0; #X connect 13 0 16 0; #X connect 14 0 15 0; #X connect 15 0 17 0; #X connect 16 0 18 0; #X connect 17 0 29 0; #X connect 18 0 40 0; #X connect 19 0 38 0; #X connect 20 0 26 0; #X connect 21 0 25 0; #X connect 22 0 23 0; #X connect 22 0 21 0; #X connect 23 0 22 1; #X connect 24 0 22 1; #X connect 24 0 35 1; #X connect 24 0 58 1; #X connect 24 0 46 0; #X connect 25 0 20 0; #X connect 25 1 26 1; #X connect 26 1 27 0; #X connect 27 0 73 0; #X connect 28 0 87 0; #X connect 29 0 22 0; #X connect 29 1 28 2; #X connect 31 0 58 0; #X connect 31 0 81 0; #X connect 32 0 41 1; #X connect 32 0 68 1; #X connect 32 0 61 1; #X connect 33 0 30 0; #X connect 34 0 37 0; #X connect 35 0 36 0; #X connect 35 0 34 0; #X connect 36 0 35 1; #X connect 37 0 19 0; #X connect 37 1 38 1; #X connect 38 1 39 0; #X connect 39 0 72 0; #X connect 40 0 35 0; #X connect 40 1 41 2; #X connect 41 0 51 0; #X connect 42 0 66 0; #X connect 43 0 32 0; #X connect 44 0 28 0; #X connect 45 0 41 0; #X connect 46 0 45 1; #X connect 46 0 44 1; #X connect 46 0 96 0; #X connect 47 0 45 1; #X connect 47 0 44 1; #X connect 48 0 3 0; #X connect 48 0 5 0; #X connect 48 0 13 0; #X connect 48 0 14 0; #X connect 48 0 91 0; #X connect 48 1 64 0; #X connect 49 0 13 1; #X connect 49 0 20 1; #X connect 50 0 14 1; #X connect 50 0 19 1; #X connect 51 0 87 0; #X connect 52 0 95 0; #X connect 52 1 1 0; #X connect 52 2 53 0; #X connect 53 0 93 0; #X connect 54 0 16 1; #X connect 54 1 15 1; #X connect 55 0 70 1; #X connect 55 0 69 2; #X connect 56 0 55 0; #X connect 57 0 55 0; #X connect 57 0 92 0; #X connect 58 0 63 0; #X connect 58 0 41 3; #X connect 59 0 21 1; #X connect 59 0 54 0; #X connect 59 0 75 0; #X connect 59 0 69 0; #X connect 60 0 34 1; #X connect 60 0 54 1; #X connect 60 0 69 1; #X connect 61 0 62 0; #X connect 61 0 84 0; #X connect 62 0 61 1; #X connect 63 0 58 1; #X connect 66 0 47 0; #X connect 66 1 31 0; #X connect 67 0 68 0; #X connect 67 1 62 1; #X connect 68 0 61 1; #X connect 69 0 67 0; #X connect 69 1 63 1; #X connect 70 0 80 0; #X connect 71 0 56 0; #X connect 71 1 70 0; #X connect 72 0 58 0; #X connect 72 1 45 0; #X connect 73 0 88 0; #X connect 73 1 61 0; #X connect 74 0 76 0; #X connect 75 0 78 0; #X connect 76 0 78 1; #X connect 77 0 8 0; #X connect 77 1 74 0; #X connect 78 0 79 0; #X connect 79 0 80 1; #X connect 80 0 83 0; #X connect 81 0 28 3; #X connect 81 0 82 0; #X connect 82 0 81 1; #X connect 83 0 88 0; #X connect 83 1 84 0; #X connect 83 2 81 0; #X connect 84 0 85 0; #X connect 84 0 28 1; #X connect 85 0 84 1; #X connect 86 0 89 0; #X connect 86 0 90 1; #X connect 87 0 33 0; #X connect 87 0 86 0; #X connect 88 0 44 0; #X connect 89 0 86 1; #X connect 91 0 92 0; #X connect 93 0 71 0; #X connect 93 1 90 0; #X connect 94 0 57 0; #X connect 95 0 94 0; #X connect 95 1 3 0; #X connect 95 2 5 0; #X connect 96 0 86 1; #X restore 98 287 pd connect; #X text 7 368 Undo; #X text 267 29 or distribute them with equal distances.; #X text 267 39 AND connect selected objects by keyb.shortcuts.; #X text 267 119 Keyboard; #X text 7 309 Mouse commands; #X text 7 329 press "x" and move your mouse (horizontal); #X text 7 319 equal distribution:; #X text 7 339 press "y" and move your mouse (vertical); #X text 7 349 press "x+y" and move your mouse (both); #X text 267 269 for connecting objects; #X text 267 279 select all objects to connect; #X text 267 289 press nr. "1" to "9" representing the outlet; #X text 267 299 (starting at 1) then press nr. "1" to "9"; #X text 267 309 representing the inlet. (the mean of all y-values; #X text 267 329 the lower ones.; #X text 267 319 is the border - upper objects are connected to; #X text 267 349 connections with multiple in/outlets of one object ; #X text 267 359 are made by pressing e.g. "1m2" (this will take the ; #X text 267 369 the 1st(+) outlet(s) of the upper object(s) and; #X text 267 379 connect it/them to the 2nd(+) inlet(s).; #X text 267 399 if you want to connect two objects with multiple; #X text 7 419 thanks to IOhannes m zmoelnig; #X text 7 429 & Luke Iannini; #X text 7 450 (GPL) 2009 Georg Werner; #X text 267 409 connections press "m" again e.g "1m2mm" this will; #X text 267 419 connect outlets 1 \, 2 \, 3 of obj.1 with inlets 2 \, 3 \, 4; #X text 267 429 of obj.2.; #X text 267 229 "s" place objects like a staircase (x+y); #X text 267 169 for equal distance distribution; #X text 7 409 this is based on iemguts; #X text 266 -2 [kbd_ctrl]; #N canvas 513 141 997 567 kbd_ctrl_core 1; #N canvas 0 0 450 466 undo 0; #X obj 51 24 inlet; #X obj 51 47 t l b; #X obj 49 150 list; #X obj 88 150 list; #X obj 28 177 list; #X obj 149 150 list; #X obj 188 150 list; #X obj 183 179 list; #X obj 51 68 list-drip; #X obj 51 89 t b f; #X obj 261 19 inlet; #X obj 28 222 list split 2; #X obj 183 222 list split 1; #X obj 28 245 list; #X obj 67 243 list; #X obj 183 246 t b b b f; #X obj 248 246 list; #X obj 256 69 t b b; #X obj 207 44 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1 -1; #X obj 183 199 t l b; #X obj 28 199 t l b; #X obj 28 283 canvasobjectposition 3; #X obj -51 110 canvasobjectposition 3; #X connect 0 0 1 0; #X connect 1 0 8 0; #X connect 1 1 2 1; #X connect 1 1 3 1; #X connect 1 1 5 1; #X connect 1 1 6 1; #X connect 2 0 3 0; #X connect 2 0 4 1; #X connect 3 0 2 1; #X connect 4 0 20 0; #X connect 5 0 6 0; #X connect 5 0 7 1; #X connect 6 0 5 1; #X connect 7 0 19 0; #X connect 8 0 9 0; #X connect 9 0 22 0; #X connect 9 1 5 0; #X connect 9 1 22 1; #X connect 10 0 17 0; #X connect 11 0 13 1; #X connect 11 1 14 1; #X connect 12 0 15 0; #X connect 12 1 16 1; #X connect 13 0 21 0; #X connect 14 0 4 0; #X connect 15 0 16 0; #X connect 15 1 14 0; #X connect 15 2 13 0; #X connect 15 3 21 1; #X connect 16 0 7 0; #X connect 17 0 7 0; #X connect 17 1 4 0; #X connect 18 0 17 0; #X connect 19 0 12 0; #X connect 19 1 7 1; #X connect 20 0 11 0; #X connect 20 1 4 1; #X connect 22 0 2 0; #X restore -8 471 pd undo; #X obj 54 421 t l l; #X msg 288 338 0; #X msg 147 338 0; #X msg 31 76 \$1; #N canvas 0 0 301 300 r_once| 0; #X obj 29 25 inlet; #X msg 62 153 0; #X obj 29 251 outlet; #X obj 29 51 t b a; #X obj 118 23 inlet; #X obj 29 202 spigot; #X msg 191 171 1; #X obj 164 81 sel 0; #X obj 118 49 route bang float; #X msg 92 171 0; #X msg 221 181 1; #X obj 221 80 r active_|; #X obj 221 212 s active_|; #X obj 92 212 s inactive_|; #X obj 92 152 r inactive_|; #X connect 0 0 3 0; #X connect 1 0 5 1; #X connect 1 0 13 0; #X connect 3 0 1 0; #X connect 3 1 5 0; #X connect 4 0 8 0; #X connect 5 0 2 0; #X connect 6 0 5 1; #X connect 6 0 12 0; #X connect 7 0 1 0; #X connect 7 1 6 0; #X connect 8 0 6 0; #X connect 8 1 7 0; #X connect 8 2 6 0; #X connect 9 0 5 1; #X connect 10 0 5 1; #X connect 11 0 10 0; #X connect 14 0 9 0; #X restore 90 368 pd r_once|; #N canvas 0 0 301 300 r_once| 0; #X obj 29 25 inlet; #X msg 62 153 0; #X obj 29 251 outlet; #X obj 29 51 t b a; #X obj 118 23 inlet; #X obj 29 202 spigot; #X msg 191 171 1; #X obj 164 81 sel 0; #X obj 118 49 route bang float; #X msg 92 171 0; #X msg 221 181 1; #X obj 92 212 s inactive_|; #X obj 92 152 r inactive_|; #X obj 221 212 s active_|; #X obj 221 80 r active_|; #X connect 0 0 3 0; #X connect 1 0 5 1; #X connect 1 0 11 0; #X connect 3 0 1 0; #X connect 3 1 5 0; #X connect 4 0 8 0; #X connect 5 0 2 0; #X connect 6 0 5 1; #X connect 6 0 13 0; #X connect 7 0 1 0; #X connect 7 1 6 0; #X connect 8 0 6 0; #X connect 8 1 7 0; #X connect 8 2 6 0; #X connect 9 0 5 1; #X connect 10 0 5 1; #X connect 12 0 9 0; #X connect 14 0 10 0; #X restore 161 367 pd r_once|; #N canvas 0 0 301 300 r_once# 0; #X obj 29 25 inlet; #X msg 62 153 0; #X obj 29 251 outlet; #X obj 29 51 t b a; #X obj 118 23 inlet; #X obj 29 202 spigot; #X msg 191 171 1; #X obj 164 81 sel 0; #X obj 118 49 route bang float; #X msg 92 171 0; #X msg 221 181 1; #X obj 221 80 r active_#; #X obj 221 212 s active_#; #X obj 92 212 s inactive_#; #X obj 92 152 r inactive_#; #X connect 0 0 3 0; #X connect 1 0 5 1; #X connect 1 0 13 0; #X connect 3 0 1 0; #X connect 3 1 5 0; #X connect 4 0 8 0; #X connect 5 0 2 0; #X connect 6 0 5 1; #X connect 6 0 12 0; #X connect 7 0 1 0; #X connect 7 1 6 0; #X connect 8 0 6 0; #X connect 8 1 7 0; #X connect 8 2 6 0; #X connect 9 0 5 1; #X connect 10 0 5 1; #X connect 11 0 10 0; #X connect 14 0 9 0; #X restore 231 367 pd r_once#; #N canvas 0 0 301 300 r_once# 0; #X obj 29 25 inlet; #X msg 62 153 0; #X obj 29 251 outlet; #X obj 29 51 t b a; #X obj 118 23 inlet; #X obj 29 202 spigot; #X msg 191 171 1; #X obj 164 81 sel 0; #X obj 118 49 route bang float; #X msg 92 171 0; #X msg 221 181 1; #X obj 221 80 r active_#; #X obj 222 212 s active_#; #X obj 92 212 s inactive_#; #X obj 92 152 r inactive_#; #X connect 0 0 3 0; #X connect 1 0 5 1; #X connect 1 0 13 0; #X connect 3 0 1 0; #X connect 3 1 5 0; #X connect 4 0 8 0; #X connect 5 0 2 0; #X connect 6 0 5 1; #X connect 6 0 12 0; #X connect 7 0 1 0; #X connect 7 1 6 0; #X connect 8 0 6 0; #X connect 8 1 7 0; #X connect 8 2 6 0; #X connect 9 0 5 1; #X connect 10 0 5 1; #X connect 11 0 10 0; #X connect 14 0 9 0; #X restore 302 367 pd r_once#; #X obj 31 3 receivecanvas 2; #X obj 54 401 canvasselect 2; #N canvas 1028 673 301 300 r_once# 0; #X obj 29 25 inlet; #X msg 62 153 0; #X obj 29 251 outlet; #X obj 29 51 t b a; #X obj 118 23 inlet; #X obj 29 202 spigot; #X msg 191 171 1; #X obj 164 81 sel 0; #X obj 118 49 route bang float; #X msg 92 171 0; #X msg 221 181 1; #X obj 221 80 r active_#; #X obj 222 212 s active_#; #X obj 92 212 s inactive_#; #X obj 92 152 r inactive_#; #X connect 0 0 3 0; #X connect 1 0 5 1; #X connect 1 0 13 0; #X connect 3 0 1 0; #X connect 3 1 5 0; #X connect 4 0 8 0; #X connect 5 0 2 0; #X connect 6 0 5 1; #X connect 6 0 12 0; #X connect 7 0 1 0; #X connect 7 1 6 0; #X connect 8 0 6 0; #X connect 8 1 7 0; #X connect 8 2 6 0; #X connect 9 0 5 1; #X connect 10 0 5 1; #X connect 11 0 10 0; #X connect 14 0 9 0; #X restore 372 367 pd r_once#; #X obj 90 532 outlet; #X obj 161 532 outlet; #X obj 231 532 outlet; #X obj 302 532 outlet; #X obj 372 532 outlet; #N canvas 0 0 301 300 r_once# 0; #X obj 29 25 inlet; #X msg 62 153 0; #X obj 29 251 outlet; #X obj 29 51 t b a; #X obj 118 23 inlet; #X obj 29 202 spigot; #X msg 191 171 1; #X obj 164 81 sel 0; #X obj 118 49 route bang float; #X msg 92 171 0; #X msg 221 181 1; #X obj 221 80 r active_#; #X obj 222 212 s active_#; #X obj 92 212 s inactive_#; #X obj 92 152 r inactive_#; #X connect 0 0 3 0; #X connect 1 0 5 1; #X connect 1 0 13 0; #X connect 3 0 1 0; #X connect 3 1 5 0; #X connect 4 0 8 0; #X connect 5 0 2 0; #X connect 6 0 5 1; #X connect 6 0 12 0; #X connect 7 0 1 0; #X connect 7 1 6 0; #X connect 8 0 6 0; #X connect 8 1 7 0; #X connect 8 2 6 0; #X connect 9 0 5 1; #X connect 10 0 5 1; #X connect 11 0 10 0; #X connect 14 0 9 0; #X restore 442 367 pd r_once#; #X obj 442 532 outlet; #X obj 31 289 sel 27 124 35 120 121 115 103 91; #X obj 31 50 route 1 0; #X obj 31 21 route key motion mouse; #X msg 39 125 1; #X msg 234 125 0; #X obj 201 150 spigot; #X msg 56 76 \$1; #X msg 201 76 \$1; #X obj 492 532 outlet; #X obj 650 276 sel 1; #X obj 650 471 list; #X obj 650 532 outlet; #X obj 650 297 t b b; #X obj 650 493 list prepend; #X text 868 231 "1-9"; #X obj 689 276 - 48; #X obj 752 258 sel 109; #X msg 752 304 symbol m; #X obj 650 205 t f f f; #X text 49 272 ESC__#__|___x___y___s___g__[; #X obj 201 202 speedlim 50; #X text 297 98 "mouse+x"; #X obj 689 297 moses 10; #X obj 677 364 spigot; #X msg 791 283 1; #X msg 765 283 0; #X obj 650 232 expr if($f1 > 48 && $f1 < 58 \, 1 \, 0); #X msg 570 494 symbol ESC; #N canvas 1065 466 449 342 sortobjectsbyxy 0; #X obj 69 18 inlet; #X obj 69 60 list-drip; #X obj 69 196 list; #X obj 108 196 list; #X obj -72 176 list; #X obj -33 176 list; #X msg -72 135 \$1; #X msg -41 135 \$2; #X obj -93 223 list; #X obj 120 138 t b b; #X obj -27 272 outlet; #X obj 48 272 outlet; #X obj 69 38 t l b; #X obj 69 80 t f b f; #X obj 48 223 list; #X obj -41 196 list; #X obj -2 196 list; #X obj 160 224 list; #X obj 160 272 outlet; #X obj 235 272 outlet; #X obj -72 114 canvasobjectposition 3; #N canvas 0 0 450 300 2list-sort 0; #X obj 155 128 sort; #X obj 128 54 inlet; #X obj 237 54 inlet; #X obj 155 239 outlet; #X obj 216 137 list; #X obj 216 239 outlet; #X obj 128 91 t b a; #N canvas 0 0 450 300 list-sort-id 0; #X obj 86 22 inlet; #X obj 185 22 inlet; #X obj 111 257 outlet; #X obj 214 212 list; #X obj 164 96 list-drip; #X obj 111 234 list; #X obj 104 166 list split; #X obj 164 77 list; #X obj 104 144 list; #X obj 164 116 t b a; #X obj 132 189 list split 1; #X obj 132 212 list prepend; #X obj 86 45 t b b a; #X connect 0 0 12 0; #X connect 1 0 7 1; #X connect 3 0 11 1; #X connect 4 0 9 0; #X connect 4 1 5 0; #X connect 5 0 2 0; #X connect 6 1 10 0; #X connect 7 0 4 0; #X connect 8 0 6 0; #X connect 9 0 8 0; #X connect 9 1 6 1; #X connect 10 0 11 0; #X connect 11 0 3 0; #X connect 11 0 5 1; #X connect 12 0 7 0; #X connect 12 1 11 1; #X connect 12 2 8 1; #X restore 216 191 pd list-sort-id; #X connect 0 0 3 0; #X connect 0 1 7 1; #X connect 1 0 6 0; #X connect 2 0 4 1; #X connect 4 0 7 0; #X connect 6 0 4 0; #X connect 6 1 0 0; #X connect 7 0 5 0; #X restore -27 249 pd 2list-sort; #N canvas 0 0 450 300 2list-sort 0; #X obj 155 128 sort; #X obj 128 54 inlet; #X obj 237 54 inlet; #X obj 155 239 outlet; #X obj 216 137 list; #X obj 216 239 outlet; #X obj 128 91 t b a; #N canvas 0 0 450 300 list-sort-id 0; #X obj 86 22 inlet; #X obj 185 22 inlet; #X obj 111 257 outlet; #X obj 214 212 list; #X obj 164 96 list-drip; #X obj 111 234 list; #X obj 104 166 list split; #X obj 164 77 list; #X obj 104 144 list; #X obj 164 116 t b a; #X obj 132 189 list split 1; #X obj 132 212 list prepend; #X obj 86 45 t b b a; #X connect 0 0 12 0; #X connect 1 0 7 1; #X connect 3 0 11 1; #X connect 4 0 9 0; #X connect 4 1 5 0; #X connect 5 0 2 0; #X connect 6 1 10 0; #X connect 7 0 4 0; #X connect 8 0 6 0; #X connect 9 0 8 0; #X connect 9 1 6 1; #X connect 10 0 11 0; #X connect 11 0 3 0; #X connect 11 0 5 1; #X connect 12 0 7 0; #X connect 12 1 11 1; #X connect 12 2 8 1; #X restore 216 201 pd list-sort-id; #X connect 0 0 3 0; #X connect 0 1 7 1; #X connect 1 0 6 0; #X connect 2 0 4 1; #X connect 4 0 7 0; #X connect 6 0 4 0; #X connect 6 1 0 0; #X connect 7 0 5 0; #X restore 160 250 pd 2list-sort; #X connect 0 0 12 0; #X connect 1 0 13 0; #X connect 1 1 9 0; #X connect 2 0 3 0; #X connect 2 0 14 1; #X connect 3 0 2 1; #X connect 4 0 5 0; #X connect 4 0 8 1; #X connect 5 0 4 1; #X connect 6 0 4 0; #X connect 7 0 15 0; #X connect 8 0 21 0; #X connect 9 0 8 0; #X connect 9 0 17 0; #X connect 9 1 14 0; #X connect 12 0 1 0; #X connect 12 1 2 1; #X connect 12 1 4 1; #X connect 12 1 15 1; #X connect 13 0 2 0; #X connect 13 1 20 0; #X connect 13 2 20 1; #X connect 14 0 22 1; #X connect 14 0 21 1; #X connect 15 0 16 0; #X connect 15 0 17 1; #X connect 16 0 15 1; #X connect 17 0 22 0; #X connect 20 0 6 0; #X connect 20 0 7 0; #X connect 21 0 10 0; #X connect 21 1 11 0; #X connect 22 0 18 0; #X connect 22 1 19 0; #X restore 81 451 pd sortobjectsbyxy; #X obj 81 486 s values_x; #X obj 149 486 s ids_x; #X obj 217 486 s values_y; #X obj 285 486 s ids_y; #X obj 201 223 t f b; #X obj 553 532 outlet; #X msg 379 125 1; #X msg 474 125 0; #X obj 441 150 spigot; #X text 537 98 "mouse+y"; #X obj 441 202 speedlim 50; #X obj 441 223 t f b; #X msg 441 76 \$2; #X obj 726 69 t b; #X msg 726 437 0; #X obj 277 194 f; #X obj 231 172 t b; #X obj 277 215 s mouse_y; #X obj 517 194 f; #X obj 471 172 t b; #X obj 517 215 s mouse_x; #X obj 39 100 sel 120; #X obj 234 100 sel 120; #X obj 379 100 sel 121; #X obj 474 100 sel 121; #X obj 441 259 pipe 30; #X obj 201 248 pipe 30; #X connect 1 0 29 1; #X connect 1 1 0 0; #X connect 1 1 47 0; #X connect 2 0 7 1; #X connect 3 0 5 1; #X connect 4 0 19 0; #X connect 4 0 37 0; #X connect 4 0 69 0; #X connect 4 0 71 0; #X connect 5 0 12 0; #X connect 6 0 13 0; #X connect 7 0 14 0; #X connect 8 0 15 0; #X connect 9 0 21 0; #X connect 10 0 1 0; #X connect 11 0 16 0; #X connect 17 0 18 0; #X connect 19 0 0 1; #X connect 19 0 3 0; #X connect 19 0 2 0; #X connect 19 0 46 0; #X connect 19 1 3 0; #X connect 19 1 10 0; #X connect 19 1 5 1; #X connect 19 1 2 0; #X connect 19 2 10 0; #X connect 19 2 7 1; #X connect 19 3 5 0; #X connect 19 3 7 0; #X connect 19 4 8 0; #X connect 19 4 6 0; #X connect 19 5 17 0; #X connect 19 6 11 0; #X connect 19 7 2 0; #X connect 19 7 3 0; #X connect 20 0 4 0; #X connect 20 1 25 0; #X connect 21 0 20 0; #X connect 21 1 26 0; #X connect 21 1 60 0; #X connect 21 2 61 0; #X connect 22 0 24 1; #X connect 23 0 24 1; #X connect 24 0 39 0; #X connect 24 0 64 0; #X connect 25 0 70 0; #X connect 25 0 72 0; #X connect 26 0 24 0; #X connect 26 0 66 1; #X connect 28 0 31 0; #X connect 28 1 42 0; #X connect 29 0 32 0; #X connect 31 0 3 0; #X connect 31 0 2 0; #X connect 31 0 29 0; #X connect 31 1 10 0; #X connect 32 0 30 0; #X connect 34 0 41 0; #X connect 35 0 36 0; #X connect 35 0 44 0; #X connect 35 1 43 0; #X connect 36 0 30 0; #X connect 37 0 45 0; #X connect 37 1 35 0; #X connect 37 2 34 0; #X connect 39 0 52 0; #X connect 41 0 32 1; #X connect 42 0 30 0; #X connect 43 0 42 1; #X connect 44 0 42 1; #X connect 45 0 28 0; #X connect 46 0 30 0; #X connect 47 0 48 0; #X connect 47 1 49 0; #X connect 47 2 50 0; #X connect 47 3 51 0; #X connect 52 0 74 0; #X connect 52 1 10 0; #X connect 54 0 56 1; #X connect 55 0 56 1; #X connect 56 0 58 0; #X connect 56 0 67 0; #X connect 58 0 59 0; #X connect 59 0 73 0; #X connect 59 1 10 0; #X connect 60 0 56 0; #X connect 60 0 63 1; #X connect 61 0 62 0; #X connect 62 0 30 0; #X connect 63 0 65 0; #X connect 64 0 63 0; #X connect 66 0 68 0; #X connect 67 0 66 0; #X connect 69 0 22 0; #X connect 70 0 23 0; #X connect 71 0 54 0; #X connect 72 0 55 0; #X connect 73 0 53 0; #X connect 74 0 27 0; #X restore 5 9 pd kbd_ctrl_core; #X text 267 79 place kbd_ctrl.pd in your search path; #X text 267 89 create a [kbd_ctrl] object inside the patch where; #X connect 4 0 17 0; #X connect 18 0 16 0; #X connect 18 1 4 0; #X connect 56 0 0 0; #X connect 56 1 1 0; #X connect 56 2 2 0; #X connect 56 3 3 0; #X connect 56 4 5 0; #X connect 56 5 18 0; #X connect 56 6 6 0; #X connect 56 7 19 0; #X connect 56 8 24 0;