#N canvas 110 261 845 398 10; #X obj 13 7 gfsm; #X obj 23 362 print GFSM-1; #X obj 116 362 print GFSM-2; #X obj 208 363 print GFSM-3; #X msg 26 70 automaton; #X msg 24 29 automaton a1; #X obj 16 91 s \$0-fsm; #X obj 93 294 r \$0-fsm; #X msg 153 75 size; #X floatatom 237 34 5 0 0 0 - - -; #X obj 237 16 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #X msg 237 51 set_root \$1; #X msg 246 74 get_root; #X msg 144 52 reserve \$1; #X floatatom 144 34 5 0 0 0 - - -; #X msg 257 15 0; #X msg 145 13 42; #X msg 349 37 is_final \$1; #X floatatom 375 18 5 0 0 0 - - -; #X msg 347 17 0; #X floatatom 388 61 5 0 0 0 - - -; #X msg 360 60 0; #X msg 363 80 set_final \$1 1; #X floatatom 517 34 5 0 0 0 - - -; #X floatatom 560 33 5 0 0 0 - - -; #X floatatom 603 33 5 0 0 0 - - -; #X floatatom 644 34 5 0 0 0 - - -; #X obj 543 59 pack 0 0 0 0 0; #X obj 494 24 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #X obj 494 57 t b b; #X msg 569 7 0; #X msg 495 105 add_arc \$1 \$2 \$3 \$4 \$5; #X obj 144 98 s \$0-fsm; #X obj 237 97 s \$0-fsm; #X obj 349 102 s \$0-fsm; #X obj 496 126 s \$0-fsm; #X msg 104 148 load test.tfst; #X msg 103 188 save tmp.tfst; #X msg 229 148 load_bin test.gfst; #X msg 234 232 save_bin tmp.gfst; #X msg 26 202 print; #X msg 22 179 clear; #X msg 18 158 info; #X obj 16 224 s \$0-fsm; #X obj 95 209 s \$0-fsm; #X obj 228 254 s \$0-fsm; #X msg 437 170 complement; #X msg 450 211 closure \$1; #X floatatom 466 193 5 0 0 0 - - -; #X obj 437 370 s \$0-fsm; #X obj 16 132 bng 20 250 50 0 \$0-draw-s empty DRAW 0 -6 0 8 -24198 -1 -1; #X obj 450 193 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #X msg 457 236 compose a2; #X msg 462 264 concat a2; #X obj 51 6 zexy; #X obj 495 84 lister; #X msg 25 48 automaton a2; #X msg 464 291 determinize; #X msg 469 319 difference a2; #X msg 475 343 intersect a2; #X obj 603 368 s \$0-fsm; #X msg 603 165 invert; #X msg 612 191 product a2; #X msg 626 234 project \$1; #X floatatom 643 213 5 0 0 0 - - -; #X obj 624 215 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #X msg 631 262 prune; #X msg 636 286 reverse; #X msg 636 313 rmepsilon; #X msg 639 337 union a2; #X msg 103 168 load test2.tfst; #X msg 233 169 load_bin test2.gfst; #X obj 92 318 gfsm_automaton a2; #X msg 238 190 load_bin test3.gfst; #X floatatom 626 5 5 0 0 0 - - -; #N canvas 0 0 466 454 draw 0; #X obj 67 25 r \$0-draw-s; #X obj 68 68 f \$0; #X msg 176 74 save_bin \$1draw.gfst; #X obj 176 98 s \$0-fsm; #X obj 68 162 shell; #X obj 68 47 t b; #X obj 68 91 t f f; #X msg 69 237 dotgv.sh \$1draw.dot; #X obj 171 311 f \$0; #X obj 172 291 t b; #X obj 171 357 shell; #X obj 172 20 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #X msg 68 137 gfsmdraw \$1draw.gfst -F \$1draw.dot; #X msg 171 334 rm -f \$1draw.gfst \$1draw.dot; #X obj 142 270 shell; #X msg 220 236 dotty \$1draw.dot; #X obj 169 183 r \$0-drawmode-s; #X obj 111 206 demux 0 1; #X obj 110 163 t b; #X obj 111 184 f \$0; #X obj 284 182 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1; #X connect 0 0 5 0; #X connect 1 0 6 0; #X connect 2 0 3 0; #X connect 4 1 18 0; #X connect 5 0 1 0; #X connect 6 0 12 0; #X connect 6 1 2 0; #X connect 7 0 14 0; #X connect 8 0 13 0; #X connect 9 0 8 0; #X connect 11 0 5 0; #X connect 12 0 4 0; #X connect 13 0 10 0; #X connect 14 1 9 0; #X connect 15 0 14 0; #X connect 16 0 17 1; #X connect 17 0 7 0; #X connect 17 1 15 0; #X connect 18 0 19 0; #X connect 19 0 17 0; #X connect 20 0 17 1; #X restore 71 118 pd draw; #X obj 44 130 tgl 20 0 \$0-drawmode-s empty mode 0 -6 0 8 -225271 -1 -1 0 1; #X msg 152 120 automaton fsm-help-2; #X connect 4 0 6 0; #X connect 5 0 6 0; #X connect 7 0 72 0; #X connect 8 0 32 0; #X connect 9 0 11 0; #X connect 10 0 9 0; #X connect 11 0 33 0; #X connect 12 0 33 0; #X connect 13 0 32 0; #X connect 14 0 13 0; #X connect 15 0 9 0; #X connect 16 0 14 0; #X connect 17 0 34 0; #X connect 18 0 17 0; #X connect 19 0 18 0; #X connect 20 0 22 0; #X connect 21 0 20 0; #X connect 22 0 34 0; #X connect 23 0 27 0; #X connect 24 0 27 1; #X connect 25 0 27 2; #X connect 26 0 27 3; #X connect 27 0 55 1; #X connect 28 0 29 0; #X connect 29 0 55 0; #X connect 29 1 27 0; #X connect 30 0 23 0; #X connect 30 0 24 0; #X connect 30 0 25 0; #X connect 30 0 26 0; #X connect 31 0 35 0; #X connect 36 0 44 0; #X connect 37 0 44 0; #X connect 38 0 45 0; #X connect 39 0 45 0; #X connect 40 0 43 0; #X connect 41 0 43 0; #X connect 42 0 43 0; #X connect 46 0 49 0; #X connect 47 0 49 0; #X connect 48 0 47 0; #X connect 51 0 48 0; #X connect 52 0 49 0; #X connect 53 0 49 0; #X connect 55 0 31 0; #X connect 56 0 6 0; #X connect 57 0 49 0; #X connect 58 0 49 0; #X connect 59 0 49 0; #X connect 61 0 60 0; #X connect 62 0 60 0; #X connect 63 0 60 0; #X connect 64 0 63 0; #X connect 65 0 64 0; #X connect 66 0 60 0; #X connect 67 0 60 0; #X connect 68 0 60 0; #X connect 69 0 60 0; #X connect 70 0 44 0; #X connect 71 0 45 0; #X connect 72 0 1 0; #X connect 73 0 45 0; #X connect 74 0 24 0; #X connect 74 0 25 0; #X connect 74 0 26 0; #X connect 77 0 6 0;