Talk:Conway's Game of Life
Add topicA video
[edit source]Hi, would be nice to have some kind of video of how this evolve(s,d) over time, ----Erkan Yilmaz uses the Wikiversity:Chat (try) 09:47, 20 March 2010 (UTC)
- greasemonkey has been suggested before but it didn't work for me.Hillgentleman | //\\ |Talk 09:59, 20 March 2010 (UTC)
Run a Puffer Train on a Laptop
[edit source]I Ray Calvin Baker (talk) 02:33, 12 March 2012 (UTC) have started exploring how to use the QB64 BASIC compiler available via the Wikipedia. It brought new excitement to an old LIFE04.bas program I had been using for my personal amusement and edification. I have succeeded in tweaking the old program (and some data sets that go with it) to the extent that I can see a STABILIZED "Puffer Train" on the screen of my laptop. (New laptop, new Windows 7 64-bit operating system. Most of my C++ work -- no longer works! But QB64 has been wonderful for me.)
What's the big deal? In 1985, William Poundstone, in his book _The_Recursive_Universe_ (Cosmic Complexity and the Limits of Scientific Knowledge), page 111, wrote, "The first successful puffer train discovered uses a B heptomino engine escorted by two lightweight spaceships. Its behavior is far more complex than anyone imagined -- it cannot be followed fully on a home computer."
The years have taken their toll on yet another "It can't be done" statement!
The simple, lowly NOTEPAD.exe editor should be quite adequate for extracting both the QB64 BASIC SOURCE CODE for LIFE04.bas, and a data file, PUFFERTR.LIF, from this page. Be sure to use the special option designed for the Puffer Train! The display screen has been split into three sections, and connected end-to-end via "star gates" implemented via software. This allows over 6000 generations, before anything except escaping gliders hits a wall; well beyond stabilization of the "irregular tail", which occurs at generation 5533.
I am still seeking the best ways to share computer files; this may not yet be "best practice".
QB64 Source code for "LIFE04.bas"; compile it to create "LIFE04.exe":
CAUTION! Some lines of code may have been TOO LONG to go through the transmission process! You may need to splice these back together to obtain a clean compile.
RESULTS OF MY SECOND TEST (BEGIN)
My first attempt failed miserably, because I downloaded the files on this page from within "edit" mode. DON'T TRY DOWNLOADING THIS WAY1
Here is what I recommend.
(1) From your desktop, use NOTEPAD.exe to create a new, empty file named "LIFE04.bas". Leave this file open in a window on your computer's desktop. (2) In the window for this Wikipedia page, simply select ALL of the text (there is a lot of it) from the QB64 Source Code box, below. If you were simply READING this page (NOT trying to edit it), you should be ready to continue. (3) Press CTRL+C to copy the selected text to the clipboard. (4) Switch (move your mouse) back to the open file in NOTEPAD. (5) Press CTRL+V to paste the text from the clipboard into your open "LIFE04.bas" file. (6) Save your newly downloaded LIFE04.bas Source Code file. (7) Repeat steps (1) through (6) with these differences: You want an new file named "PUFFERTR.LIF" open in NOTEPAD on your desktop. You want to select the text from the SECOND box below (that is, the DATA file). (8) You should now have two new files, LIFE04.bas and PUFFERTR.LIF on your computer. (9) Use the QB64 program (what? you haven't downloaded such a useful tool from Wikipedia yet?) to compile the Source Code and run your new LIFE04.exe app. Follow the program instructions to read the data file, let your computer run about four or five hours, and watch 6000 generations of the PUFFER TRAIN. I hope this works well for you. ~~~~
RESULTS OF MY SECOND TEST (=END=)
I put the four tildes ("~") for my digital signature in that last update, but they didn't work, because they were inside a section of text protected by the "PRE" and "/PRE" HTML tags. I want to reassure you that I fully intended to make that update, so here is my (correct) signature now.
Ray Calvin Baker (talk) 00:24, 13 March 2012 (UTC)
I hope a working version of the program, with some prepared data, will be more fun than just a video.
The Wonderful World of Beta Test
I was so pleased that I was able to display the stabilized PUFFER TRAIN on the screen of a PC! But imagine my embarassment when I discovered serious problems with OTHER data files.
(1) Some traces of the "split screen" were left, to mess up other non-split displays.
(2) The population census worked properly ONLY when "zoom%" was 1. The reported population lags one generation benind, but I see no practical way to anticipate how many "live" cells there will be in the "current" generation, except to count them after the display has been updated.
(3) Keys "1", "2", and "3" failed to increment the Y coordinate, due to a stray key press during an edit.
I hope this revision, Thursday, 2012, March 15 06:20 gets things running properly.
Ray Calvin Baker (talk) 02:21, 16 March 2012 (UTC)
Source Code
version$ = "THU 2012 MAR 15 06:20 AM." _MOUSEHIDE 'This stuff controls the screen display. But see _NEWIMAGE below. SCREEN 12 TestPat$ = "N" ' "Y" = Show Test Patterns for split screen. ' Since I now have TWO working star gates, ' I probably won't need this much more. numX% = 640: numY% = 480: dbug$ = "N" 'numX% = 12: numY% = 12 dbug$ = "N": 'Temporary for debugging zoom% = 1 DIM SHARED zoom% oldColor% = 0 ' Special for cursor when zoom% = 1. 'I tried this BEAUTIFUL QB64 experiment. numX% = 1335: numY% = 705: dbug$ = "N" handle& = _NEWIMAGE(numX%, numY%, 256) SCREEN handle& 'End of QB64 experiment. BEAUTIFUL! ' Most of the split screen experiment starts on line 478. sgADLx% = 1: sgAURx% = 1333 sgAURyu% = 58: sgAURyd% = 274 sgADLyu% = 486: sgADLyd% = 702 sgBULx% = 320: sgBDRx% = 1333 sgBULyu% = 275: sgBULyd% = 483 sgBDRyu% = 490: sgBDRyd% = 698 LOCATE 1, 1: PRINT "LIFE04.BAS created THU 2011 NOV 17 11:38 PM,"; LOCATE 2, 1: PRINT " revised "; version$; LOCATE 3, 1: PRINT "Final tests before shipping: TestPat$ = 'Y' [OK], "; LOCATE 4, 1: PRINT "and TestPat$ = 'N' [OK]. "; LOCATE 5, 1: PRINT "New Features: DGRAY/WHITE cursor for zoom% = 1. " LOCATE 6, 1: PRINT "Split screeen for 'Puffer Train'. Population census (flawed). "; LOCATE 7, 1: PRINT "Compiled by QB64, for (almost) full screen display. " LOCATE 8, 1: PRINT "'C' file command and FileColor% variable to "; LOCATE 9, 1: PRINT "highlight selected cells. Most colors will not "; LOCATE 10, 1: PRINT "be recognized as live cells. (Only DBLUE% = 1, "; LOCATE 11, 1: PRINT "LBLUE% = 9, DRED% = 4, and LRED% = 12 are OK.) "; LOCATE 13, 1: PRINT "LIFE04.BAS instructions: (zoom% = 1 works, but needs testing.) "; 'LOCATE 14, 1: PRINT " E.g., a cursor, a trace of cells which have been on, etc. "; TRAC$ = "N" TRAC$ = "Y" PRINT LOCATE 15, 1: PRINT "Drawing mode:" PRINT "NumLock must be ON. Use numeric keypad to move (toroidal) cursor." PRINT "Use 'i' or 'd' to insert or delete 'LIFE' cells." PRINT "The '+' and '-' keys control the 'zoom%' factor." PRINT " (Changing zoom% after starting to draw is NOT recommended.)" PRINT "Press the 'Q' key to quit the program." PRINT "Press the 'Enter' key to change color of the ('i' & 'd') cursor(s)." PRINT "Use 'R' to read any '*.LIF' file ('.LIF' is appended automatically)." PRINT " You will be asked to confirm the file name ('Y' or 'N')." PRINT " (File names are NOT case sensitive; but you MUST enter a name.) " PRINT "Use 'r' to read subsequent generations from an open input file." PRINT "Use 'W' to write to (append) 'LO000000.LIF' data file." PRINT "(You may insert 'x delX%' and 'y delY%' commands into the file" PRINT " before any 'Y' command, to offset the following coordinates.)" PRINT PRINT "There are more instructions for 'Simulation mode' " PRINT "and 'Editing Input Files'." PRINT "Press the 'Enter' [CHR$(13)] key NOW to continue."; INPUT sym$ CLS PRINT "Simulation mode:" PRINT "When you have a configuration of RED or BLUE squares, " PRINT " press the 'l' [lower case ELL] key to start the LIFE simulation " PRINT "(1 generation), or 'L' for continuous operation until... " PRINT "Press the 'Esc' [CHR$(27)] key to return to 'drawing' mode." PRINT PRINT "Editing Input Files: (Use the NOTEPAD.exe editor!) " PRINT "'(' and ')' delimit comments. These will be displayed, " PRINT " but you will not need to press the 'Enter' key. " PRINT "'[' and ']' delimit comments. These will be displayed; " PRINT " you will need to press the 'Enter' key to continue. " PRINT "'x' and 'y' shift the following input file data. " PRINT "'-', '|', and '/' are mirrors to reflect input file data. " PRINT " Use 'x' and 'y' afterwards, as needed. " PRINT "'?' allows keyboard entry of 'x' and 'y' data as prompted. " PRINT "'C' sets the color for the following items set up by the file. " ' RCB PRINT "(Only 1, 4, 9, and 12 will be recognized as 'live' cells.) " PRINT "(Use of colors 7, 8, and 15 is discouraged; " PRINT "the cursor for zoom% = 1 can get lost in these colors.) " PRINT "Do not forget 'CRLF' after the '.' which signals 'EOF'. " PRINT " (Use a space before the '.'.)" PRINT PRINT "Would you like to split the display (so you can see the PUFFER TRAIN)? " PRINT "(This experiment is customized, and works only with zoom% = 1) " PRINT "(ENTER 'Y' or 'N'.) "; INPUT split$ PRINT PRINT "That's all of the instructions." PRINT "Press the 'Enter' [CHR$(13)] key NOW to continue."; INPUT sym$ CLS IF dbug$ = "Y" OR split$ = "y" OR split$ = "Y" THEN 'numX% = 280: numY% = 320: ' FOR DEBUGGING 'zoom% = 10: ' FOR DEBUGGING zoom% = 1 ELSE zoom% = 2 END IF FileColor% = 12: ' 12=LRED; NEW STUFF INOPE$ = "F": ' "INput file OPEn $" (LIFE03.BAS) SmaxX% = numX% - 1: SMaxY% = numY% - 1 BLACK% = 0: DBLUE% = 1: DGREEN% = 2: DCYAN% = 3 DRED% = 4: DMAGENTA% = 5: BROWN% = 6: LGRAY% = 7 DGRAY% = 8: LBLUE% = 9: LGREEN% = 10: LCYAN% = 11 LRED% = 12: LMAGENTA% = 13: YELLOW% = 14: WHITE% = 15 DIM SHARED CA$(15) CA$(BLACK%) = "BLACK ": CA$(DBLUE%) = "DBLUE " CA$(DGREEN%) = "DGREEN ": CA$(DCYAN%) = "DCYAN " CA$(DRED%) = "DRED ": CA$(DMAGENTA%) = "DMAGENTA " CA$(BROWN%) = "BROWN ": CA$(LGRAY%) = "LGRAY " CA$(DGRAY%) = "DGRAY ": CA$(LBLUE%) = "LBLUE " CA$(LGREEN%) = "LGREEN ": CA$(LCYAN%) = "LCYAN " CA$(LRED%) = "LRED ": CA$(LMAGENTA%) = "LMAGENTA " CA$(YELLOW%) = "YELLOW ": CA$(WHITE%) = "WHITE " colrD% = LGRAY%: colrI% = LBLUE% x% = 1: y% = 1 oldX% = 1: oldY% = 1 gen% = 0: pop% = 0 sym$ = INKEY$ 'OPEN "LI000000.LIF" FOR INPUT AS #1 : ' LIFE02.BAS WHILE sym$ <> "Q" oldX% = x% oldY% = y% SELECT CASE sym$ CASE "+" ' Drawing mode zoom% = zoom% + 1 CASE "-" ' Drawing mode zoom% = zoom% - 1 IF (zoom% < 1) THEN zoom% = 1 END IF CASE "1" ' Drawing mode y% = y% + 1 IF ((zoom% * (y% + 2)) > SMaxY%) THEN y% = 1 END IF x% = x% - 1 IF (x% < 1) THEN x% = (SmaxX% \ zoom%) - 1 END IF LOCATE 1, 1 PRINT "("; x%; ","; y%; ") " CASE "2" ' Drawing mode y% = y% + 1 IF ((zoom% * (y% + 2)) > SMaxY%) THEN y% = 1 END IF LOCATE 1, 1 PRINT "("; x%; ","; y%; ") " CASE "3" ' Drawing mode y% = y% + 1 IF ((zoom% * (y% + 2)) > SMaxY%) THEN y% = 1 END IF x% = x% + 1 IF ((zoom% * (x% + 1)) > SmaxX%) THEN x% = 1 END IF LOCATE 1, 1 PRINT "("; x%; ","; y%; ") " CASE "4" ' Drawing mode x% = x% - 1 IF (x% < 1) THEN x% = (SmaxX% \ zoom%) - 1 END IF LOCATE 1, 1 PRINT "("; x%; ","; y%; ") " CASE "6" ' Drawing mode x% = x% + 1 IF ((zoom% * (x% + 1)) > SmaxX%) THEN x% = 1 END IF LOCATE 1, 1 PRINT "("; x%; ","; y%; ") " CASE "7" ' Drawing mode y% = y% - 1 IF (y% < 1) THEN y% = (SMaxY% \ zoom%) - 2 END IF x% = x% - 1 IF (x% < 1) THEN x% = (SmaxX% \ zoom%) - 1 END IF LOCATE 1, 1 PRINT "("; x%; ","; y%; ") " CASE "8" ' Drawing mode y% = y% - 1 IF (y% < 1) THEN y% = (SMaxY% \ zoom%) - 2 END IF LOCATE 1, 1 PRINT "("; x%; ","; y%; ") " CASE "9" ' Drawing mode y% = y% - 1 IF (y% < 1) THEN y% = (SMaxY% \ zoom%) - 2 END IF x% = x% + 1 IF ((zoom% * (x% + 1)) > SmaxX%) THEN x% = 1 END IF LOCATE 1, 1 PRINT "("; x%; ","; y%; ") " CASE "i" ' Drawing mode ' Insert a cell IorD$ = "i" DrawCell x%, y%, colrI% oldColor% = colrI% CASE "d" ' Drawing mode ' Delete a cell IorD$ = "d" DrawCell x%, y%, colrD% oldColor% = colrD% CASE "l", "L" ' Change from drawing mode to simulation mode ' Lower case ell for "LIFE" one generation only. ' Upper case ell for "LIFE" continuous generations ' until 'ESC' key is pressed (then, back to drawing mode). ' ' ' Reading generation Gn; writing generation Gn+1: ' ' Row ii%-2 : Gn+1 Gn+1 Gn+1 Gn+1 Gn+1 ' ' : + - - - - - - - - - - + ' ' : |(WRITE) READ | ' ' Row ii%-1 : Gn+1 | Gn+1 Gn+1 Gn+1 | Gn+1 ' Top1% Top2% Top3% ' extra row : vvv | Gn Gn Gn | Gn ' LColr1% LColr2% LColr3% ' : | | ' ' : |(WRITE) READ | ' ' Row ii% : Gn+1 | Gn Gn Gn | Gn ' Top4% Top5% ' extra row : Gn | ^^^ ^^^ ^^^ | ^^^ ' LColr4% LColr5% LColr6% ' : | | ' ' : | READ | ' ' Row ii%+1 : Gn | Gn Gn Gn | Gn ' LColr7% LColr8% LColr9% ' : + - - - - - - - - - - + ' ' Row ii%+2 : Gn Gn Gn Gn Gn ' ' ' Historical NOTE: I started with a 16-bit version of BASIC, ' which had severe memory limitations. ' I got this program to work, in spite of those limitations. ' This is the revised plan: use display instead of arrays. ' I have pushed LIFE04.bas about as far as is practical. ' Future improvements should be based on QB64 array processing, ' not limited by display limitations, using sparse files as ' the data storage method. The results should be: NO WALLS, ' and FASTER operation! But, you'll have to start fresh. ' ' Set up the borders and the save areas: dud$ = "" WHILE dud$ <> CHR$(27) FOR ii% = 0 TO (SmaxX% \ zoom%) ' Simulation mode DrawCell ii%, 0, YELLOW% DrawCell ii%, SMaxY% \ zoom%, YELLOW% DrawCell ii%, SMaxY% \ zoom% - 1, YELLOW% NEXT ii% ' Simulation mode FOR jj% = 0 TO (SMaxY% \ zoom%) ' Simulation mode DrawCell 0, jj%, YELLOW% DrawCell SmaxX% \ zoom%, jj%, YELLOW% NEXT jj% ' Simulation mode ' Calculate the next LIFE generation: 'ROWjj%-2: A B C D E | | | A B C D E | ' ' : + - - + | : | | + - - + | : ' 'ROWjj%-1: F|G H I|J | g h i : | 1 2 3 | F|G H I|J | h i ? : ' ' : | | | $ $ ^ : | | | | | : ' 'ROWjj% : K|l m n|o | l m n : L M | 4 5 6 | K|L M n|o | m n ? : M(?)' ' : |$ $ ^| | $ $ ^ : $ * | | |^ # #| | # # : #(#)' 'ROWjj%+1: p|q r s|t | q r s : | 7 8 9 | p|q r s|t | r s ? : ' ' : +$-$-^+ | $ $ ^ : |Missing| + - - + | : ' 'ROWjj%+2: u v w y z |LColr?%:Top?%|digits | u v w y z | : ' ' : | : |for "?"| | : ' 'ExtraROW: k g h i j | |in | k l h i j | ' ' : $ $ ^ | |storage| ^ # # | ' ' : READING |WORKING STORE|names | WRITING |WORKING STORE' ' : |(* M is calculated) | m(n) | (SHIFTED) ' ' $ When starting a row, read g, h, l, m, q, r, and L (a border). ' ' For other cells, read i, n, and s. Write l and L, then shift. ' ' # After finishing a row, write M (next to L), write m next to l, ' ' and possibly write border squares (next to m and M). ' ' ' gen% = gen% + 1 IF (zoom% = 1) THEN ' Simulation mode ' LIFE03.BAS LOCATE 1, 25: PRINT "G="; gen%; " " ' was 28,25 LOCATE 1, 35: PRINT "P="; pop%; " " ' was 28,35 ELSE ' Simulation mode LOCATE 1, 25: PRINT "G="; gen%; " " LOCATE 1, 35: PRINT "P="; pop%; " " END IF ' Simulation mode FOR jj% = 1 TO (SMaxY% \ zoom%) - 2 ' Simulation mode ' Initialize for processing a row: LColr1% = POINT(0, zoom% * (SMaxY% \ zoom%)): ' Gn "g" from extra row LColr2% = POINT(zoom%, zoom% * (SMaxY% \ zoom%)): 'Gn "h" from extra row LColr4% = POINT(0, zoom% * jj%): ' Gn "l" from current row LColr5% = POINT(zoom%, zoom% * jj%): ' Gn "m" from current row LColr7% = POINT(0, zoom% * (jj% + 1)): ' Gn "q" from next row LColr8% = POINT(zoom%, zoom% * (jj% + 1)): ' Gn "r" from next row 'Top1% = POINT(0, zoom% * (jj% - 1)): ' Gn+1 from previous row 'Top2% = POINT(zoom%, zoom% * (jj% - 1)): ' Gn+1 from previous row Top4% = YELLOW%: ' Gn+1 "L" (a border) from current row ' BEGIN These blocks post data so I can see it. IF jj% = 50 THEN LOCATE 1, 25: PRINT "G="; gen%; " " ' was 28,25 LOCATE 1, 35: PRINT "P="; pop%; " " ' was 28,35 END IF IF jj% = 100 AND split$ = "Y" THEN IF TestPat$ = "Y" THEN LOCATE 1, 50: PRINT " BEGIN debugging split screen." LOCATE 2, 50: PRINT " UP RIGHT 'A'"; LOCATE 3, 50: PRINT "sgADLx% X LEFT (CYAN)="; sgADLx%; "; sgAURx% X RIGHT (CYAN)="; sgAURx%; ' | LOCATE 4, 50: PRINT "sgAURyu% Y up (UP RIGHT)="; sgAURyu%; "; sgAURyd% Y down (UP RIGHT)="; sgAURyd%; ' | LOCATE 5, 50: PRINT "sgADLyu% Y up (DOWN LEFT)="; sgADLyu%; "; sgADLyd% Y down (DOWN LEFT)="; sgADLyd%; '"; ENTER "; ' | INPUT Junk$ LOCATE 1, 50: PRINT " BEGIN debugging split screen." LOCATE 2, 50: PRINT " DOWN RIGHT 'B' "; LOCATE 3, 50: PRINT "sgBULx% X LEFT (CYAN)="; sgBULx%; "; sgBDRx% X RIGHT (CYAN)="; sgBDRx%; ' | LOCATE 4, 50: PRINT "sgBULyu% Y up (UP LEFT)="; sgBULyu%; "; sgBULyd% Y down (UP LEFT)="; sgBULyd%; ' | LOCATE 5, 50: PRINT "sgADRyu% Y up (DOWN RIGHT)="; sgBDRyu%; "; sgBDRyd% Y down (DOWN RIGHT)="; sgBDRyd%; '"; ENTER "; ' | 'INPUT Junk$ END IF ' TestPat$ = "Y" END IF IF jj% = 280 AND split$ = "Y" THEN FOR sg0% = sgBULx% TO sgBDRx% DrawCell sg0%, sgAURyd% + 1, WHITE% NEXT sg0% END IF IF jj% = 495 AND split$ = "Y" THEN FOR sg0% = sgADLx% TO sgAURx% DrawCell sg0%, sgADLyu% - 1, WHITE% NEXT sg0% END IF ' =END= These blocks post data so I can see it. FOR ii% = 1 TO (SmaxX% \ zoom%) - 1 ' Simulation mode sum% = 0: redSum% = 0 IF ((LColr1% = DRED%) OR (LColr1% = LRED%)) THEN ' Simulation mode sum% = sum% + 2: redSum% = redSum% + 1 END IF ' Simulation mode IF ((LColr1% = DBLUE%) OR (LColr1% = LBLUE%)) THEN ' Simulation mode sum% = sum% + 2 END IF ' Simulation mode IF ((LColr2% = DRED%) OR (LColr2% = LRED%)) THEN ' Simulation mode sum% = sum% + 2: redSum% = redSum% + 1 END IF ' Simulation mode IF ((LColr2% = DBLUE%) OR (LColr2% = LBLUE%)) THEN ' Simulation mode sum% = sum% + 2 END IF ' Simulation mode 'Top3% = POINT(zoom% + (ii% + 1), zoom% * (jj% - 1)): ' Gn+1 from previous row LColr3% = POINT(zoom% * (ii% + 1), zoom% * (SMaxY% \ zoom%)): ' Gn "i" from extra row IF ((LColr3% = DRED%) OR (LColr3% = LRED%)) THEN ' Simulation mode sum% = sum% + 2: redSum% = redSum% + 1 END IF ' Simulation mode IF ((LColr3% = DBLUE%) OR (LColr3% = LBLUE%)) THEN ' Simulation mode sum% = sum% + 2 END IF ' Simulation mode IF ((LColr4% = DRED%) OR (LColr4% = LRED%)) THEN ' Simulation mode sum% = sum% + 2: redSum% = redSum% + 1 END IF ' Simulation mode IF ((LColr4% = DBLUE%) OR (LColr4% = LBLUE%)) THEN ' Simulation mode sum% = sum% + 2 END IF ' Simulation mode IF ((LColr5% = DRED%) OR (LColr5% = LRED%)) THEN ' Simulation mode sum% = sum% + 1 END IF ' Simulation mode IF ((LColr5% = DBLUE%) OR (LColr5% = LBLUE%)) THEN ' Simulation mode sum% = sum% + 1 END IF ' Simulation mode IF (TRAC$ = "Y") THEN ' Simulation mode IF ((LColr5% = LGREEN%) OR (LColr5% = LBLUE% OR LColr5% = LRED% OR LColr5% = DBLUE% OR LColr5% = DRED%)) THEN ' Simulation mode WLG$ = "Y": ' "Was Light Green Or Blue" ELSE ' Simulation mode WLG$ = "N" END IF ' Simulation mode END IF ' Simulation mode LColr6% = POINT(zoom% * (ii% + 1), zoom% * jj%): ' Gn "n" from current row IF ((LColr6% = DRED%) OR (LColr6% = LRED%)) THEN ' Simulation mode sum% = sum% + 2: redSum% = redSum% + 1 END IF ' Simulation mode IF ((LColr6% = DBLUE%) OR (LColr6% = LBLUE%)) THEN ' Simulation mode sum% = sum% + 2 END IF ' Simulation mode IF ((LColr7% = DRED%) OR (LColr7% = LRED%)) THEN ' Simulation mode sum% = sum% + 2: redSum% = redSum% + 1 END IF ' Simulation mode IF ((LColr7% = DBLUE%) OR (LColr7% = LBLUE%)) THEN ' Simulation mode sum% = sum% + 2 END IF ' Simulation mode IF ((LColr8% = DRED%) OR (LColr8% = LRED%)) THEN ' Simulation mode sum% = sum% + 2: redSum% = redSum% + 1 END IF ' Simulation mode IF ((LColr8% = DBLUE%) OR (LColr8% = LBLUE%)) THEN ' Simulation mode sum% = sum% + 2 END IF ' Simulation mode ' Gn "s" from nexxt row LColr9% = POINT(zoom% * (ii% + 1), zoom% * (jj% + 1)) IF ((LColr9% = DRED%) OR (LColr9% = LRED%)) THEN ' Simulation mode sum% = sum% + 2: redSum% = redSum% + 1 END IF ' Simulation mode IF ((LColr9% = DBLUE%) OR (LColr9% = LBLUE%)) THEN ' Simulation mode sum% = sum% + 2 END IF ' Simulation mode IF ((sum% > 4) AND (sum% < 8)) THEN ' Simulation mode IF (redSum% > 1) THEN ' Simulation mode ' WAS 2 (probable error) Top5% = LRED% ELSE ' Simulation mode Top5% = LBLUE% END IF ' Simulation mode ELSE ' Simulation mode Top5% = DGREEN% ' Don't change this! ' LIFE03.BAS experiment: IF (TRAC$ = "Y") THEN ' Simulation mode IF (WLG$ = "Y") THEN ' Simulation mode Top5% = LGREEN% END IF ' Simulation mode END IF ' Simulation mode END IF ' Simulation mode ' DEBUGGING: IF (dbug$ = "Y") THEN ' Simulation mode LOCATE 21, 1 PRINT "Col: "; ii%; ", Row: "; jj% PRINT CA$(LColr1%), CA$(LColr2%), CA$(LColr3%), "; "; CA$(Top1%); " "; CA$(Top2%); " "; CA$(Top3%) PRINT CA$(LColr4%), CA$(LColr5%), CA$(LColr6%), "; "; CA$(Top4%); " "; CA$(Top5%) PRINT CA$(LColr7%), CA$(LColr8%), CA$(LColr9%), "; " INPUT "?"; dud$ END IF ' Simulation mode ' WRITE Gn+1 squares: DrawCell ii% - 1, SMaxY% \ zoom%, LColr4% DrawCell ii% - 1, jj%, Top4% IF (Top4% = LBLUE% OR Top4% = DBLUE% OR Top4% = LRED% OR Top4% = DRED%) THEN ' Simulation mode ' For tracing IF (zoom% > 1) THEN ' Simulation mode ' LIFE03.BAS LINE (i1% - 1, j1% - 1)-(i2% + 1, j2% + 1), BLACK%, B END IF ' Simulation mode END IF ' Simulation mode 'PRINT CA$(LColr4%); "to ("; ii% - 1; ","; SmaxY% \ zoom%; ").": ' DEBUG 'PRINT CA$(Top4%); " to ("; ii% - 1; ","; jj%; ").": ' DEBUG 'INPUT "?"; dud$ ' Prepare to process next column: LColr1% = LColr2%: LColr2% = LColr3% LColr4% = LColr5%: LColr5% = LColr6% LColr7% = LColr8%: LColr8% = LColr9% Top1% = Top2%: Top2% = Top3% Top4% = Top5% NEXT ii% ' Simulation mode 'ROWjj%-2: A B C D E | | | A B C D E | ' ' : + - - + | : | | + - - + | : ' 'ROWjj%-1: F|G H I|J | g h i : | 1 2 3 | F|G H I|J | h i ? : ' ' : | | | $ $ ^ : | | | | | : ' 'ROWjj% : K|l m n|o | l m n : L M | 4 5 6 | K|L M n|o | m n ? : M(?)' ' : |$ $ ^| | $ $ ^ : $ * | | |^ # #| | # # : #(#)' 'ROWjj%+1: p|q r s|t | q r s : | 7 8 9 | p|q r s|t | r s ? : ' ' : +$-$-^+ | $ $ ^ : |Missing| + - - + | : ' 'ROWjj%+2: u v w y z |LColr?%:Top?%|digits | u v w y z | : ' ' : | : |for "?"| | : ' 'ExtraROW: k g h i j | |in | k l h i j | ' ' : $ $ ^ | |storage| ^ # # | ' ' : READING |WORKING STORE|names | WRITING |WORKING STORE' ' : |(* M is calculated) | m(n) | (SHIFTED) ' ' $ When starting a row, read g, h, l, m, q, r, and L (a border). ' ' For other cells, read i, n, and s. Write l and L, then shift. ' ' # After finishing a row, write M (next to L), write m next to l, ' ' and possibly write border squares (next to m and M). ' ' ' ' Finish processing the row: ' There is an ANOMALY somewhere! DrawCell SmaxX% \ zoom% - 1, jj%, Top4% DrawCell SmaxX% \ zoom% - 1, SMaxY% \ zoom%, LColr4% NEXT jj% ' Simulation mode ' BEGIN Take a census of the population. pop% = 0 FOR jj% = 1 TO (SMaxY% \ zoom%) - 2 ' Simulation mode FOR ii% = 1 TO (SmaxX% \ zoom%) - 1 ' Simulation mode popColor% = POINT(ii% * zoom%, jj% * zoom%) IF popColor% = LRED% OR popColor% = DRED% OR popColor% = LBLUE% OR popColor% = DBLUE% THEN pop% = pop% + 1 END IF NEXT ii% ' Simulation mode NEXT jj% ' Simulation mode ' =END= Take a census of the population. IF split$ = "y" OR split$ = "Y" THEN ' Simulation mode ' NOTE: This will need extensive testing for zoom% = 1 case. ' Results may be uncertain for zoom% = an odd number. ' Early tests of the "PUFFERTR.LIF" file show that ' I need TWO star gates. The concept is viable, ' but I need better, more descriptive nanes. DONE! ' EVERYTHING has been customized for zoom% = 1 ' and the PUFFERTR.LIF file. ' sg~ What it is for: Star Gate. ' ~A~ or ~B~ for the original star gate or for the cloned star gate. ' ~UR~ or ~DL~ which portal: UP RIGHT or DOWN LEFT. ' (NOTE: star gate "B" is upside down.) ' ~x~ or ~yu~ or ~yd~ for: X value, or UP Y value, or DOWN Y value. ' | WAS | suggested new names | Area AURyu% | ' +------+----------------------+ ONE AURyd% | ' | sg2% | sgADLx% or sgBULx% | +-----------------+ ' | sg3% | sgAURx% or sgBDRx% | | BULyu% Area | ' | sg4% | sgAURyu% or sgBDRyu% | | BULyd% THREE | ' | sg5% | sgAURyd% or sgBDRyd% +------+-----------------+ ' | sg6% | sgADLyu% or sgBULyu% | ADLyu% Area BDRyu% | ' | sg7% | sgADLyd% or sgBULyd% | ADJyd% TWO BDRyd% | ' This is the plan. I hope it works. It worked once. | ' BOTH stargates work well enough to display the stabilized PUFFER TRAIN! | ' UP HALF || DOWN HALF . | ' a1 b1 c1 d1 e1 || d1 e1 f1 g1 1. Assume these are correct. | ' a1 b1 c1 d1 e1 || d1 e1 f1 g1 2. Proceed as usual. | ' a2 b2 c2 d2 xx || xx e2 f2 g2 "xx" is incorrect because of "||", | ' || but it will be overwritten by E1 or D1. | ' >||< 3. Draw the stargate. | ' a2 b2 c2 d2 xx || D2 e2 f2 g2 4. Copy d2 (UP RIGHT) to D2 (DOWN LEFT). | ' a2 b2 c2 d2 E2 || D2 e2 f2 g2 5. Copy e2 (DOWN LEFT) to E2 (UP RIGHT). | ' These are the important parameters for the split screen. ' STAR GATE "A": ' "X DOWN LEFT" = sgADLx% = 1 ' CYAN column ' ' "X UP RIGHT" = sgAURx% = SmaxX% \ zoom% - 1 ' CYAN column ' ' "Y up on UP RIGHT" = sgAURyu% = 1 ' ' "Y down on UP RIGHT" = sgAURyd% = (SmaxY% \ 2) \ zoom% - 1 '| ' "Y up on DOWN LEFT" = sgADLyu% = (SmaxY% \ 2) \ zoom% + 1 '| ' "Y down on DOWN LEFT" = sgADLyd% = (SmaxY% \ zoom%) - 2 ' | ' STAR GATE "B": | ' (This one is "upside down"!) | IF TestPat$ = "Y" THEN LOCATE 1, 50: PRINT " BEGIN debugging split screen."; FOR sg0% = sgAURyu% TO sgAURyd% DrawCell sgAURx% - 2, sg0%, (sg0% MOD 16) NEXT sg0% LOCATE 9, 40 PRINT "Does TestPat$ #1 'A' show up? ; ENTER to continue. "; INPUT Junk$ FOR sg0% = sgBDRyu% TO sgBDRyd% DrawCell sgBDRx% - 2, sg0%, (sg0% MOD 16) NEXT sg0% LOCATE 9, 40 PRINT "Does TestPat$ #1 'B' show up? ; ENTER to continue. "; INPUT Junk$ FOR sg0% = sgADLyu% TO sgADLyd% DrawCell sgADLx% + 2, sg0%, ((sg0% + 6) MOD 16) NEXT sg0% LOCATE 9, 40 PRINT "Did TestPat$ #2 'A' show up? ; ENTER to continue. "; INPUT Junk$ FOR sg0% = sgBULyu% TO sgBULyd% DrawCell sgBULx% + 2, sg0%, ((sg0% + 6) MOD 16) NEXT sg0% LOCATE 9, 40 PRINT "Did TestPat$ #2 'B' show up? ; ENTER to continue. "; INPUT Junk$ END IF ' TestPat$ = "Y" ' (2.A for "A") Draw horizontal split lines FOR sg0% = sgBULx% TO sgBDRx% DrawCell sg0%, sgBULyu%, WHITE% NEXT sg0% FOR sg0% = sgADLx% TO sgAURx% DrawCell sg0%, sgADLyu% - 1, WHITE% NEXT sg0% ' (2.B for "A") Draw UP RIGHT "A" stargate FOR sg0% = sgAURyu% TO sgAURyd% DrawCell sgAURx%, sg0%, LCYAN% NEXT sg0% ' (2.B for "B") Draw DOWN RIGHT "B" stargate FOR sg0% = sgBDRyu% TO sgBDRyd% DrawCell sgBDRx%, sg0%, LMAGENTA% NEXT sg0% ' (2.C for "A") Draw DOWN LEFT "A" stargate FOR sg0% = sgADLyu% TO sgADLyd% DrawCell 1, sg0%, DCYAN% NEXT sg0% ' (2.C for "B") Draw UP LEFT "B" stargate FOR sg0% = sgBULyu% TO sgBULyd% DrawCell sgBULx%, sg0%, DMAGENTA% NEXT sg0% IF TestPat$ = "Y" THEN LOCATE 2, 50: PRINT " UP RIGHT 'A' "; LOCATE 3, 50: PRINT "sgADLx% X LEFT (CYAN)="; sgADLx%; "; sgAURx% X RIGHT (CYAN)="; sgAURx%; ' | LOCATE 4, 50: PRINT "sgAURyu% Y up (UP RIGHT)="; sgAURyu%; "; sgAURyd% Y down (UP RIGHT)="; sgAURyd%; ' | LOCATE 5, 50: PRINT "sgADLyu% Y up (DOWN LEFT)="; sgADLyu%; "; sgADLyd% Y down (DOWN LEFT)="; sgADLyd%; "; ENTER "; ' | INPUT Junk$ LOCATE 2, 50: PRINT " DOWN RIGHT 'B' "; LOCATE 3, 50: PRINT "sgBULx% X LEFT (CYAN)="; sgBULx%; "; sgBDRx% X RIGHT (CYAN)="; sgBDRx%; ' | LOCATE 4, 50: PRINT "sgBULyu% Y up (UP LEFT)="; sgBULyu%; "; sgBULyd% Y down (UP LEFT)="; sgBULyd%; ' | LOCATE 5, 50: PRINT "sgBDRyu% Y up (DOWN RIGHT)="; sgBDyu%; "; sgBDRyd% Y down (DOWN RIGHT)="; sgBDRyd%; "; ENTER "; ' | INPUT Junk$ END IF ' TestPat$ = "Y" FOR sg0% = sgADLyu% TO sgADLyd% ' 4. Copy e1 DOWN LEFT "A" to E1 UP RIGHT. sgColor% = POINT((sgADLx% + 2) * zoom%, sg0% * zoom%) ' | DrawCell sgAURx% - 1, sg0% - sgADLyu% + sgAURyu%, sgColor% ' | NEXT sg0% FOR sg0% = sgBULyu% TO sgBULyd% ' 4. Copy e1 UP LEFT "B" to E1 DOWN RIGHT. sgColor% = POINT((sgBULx% + 2) * zoom%, sg0% * zoom%) ' | DrawCell sgBDRx% - 1, sg0% - sgBULyu% + sgBDRyu%, sgColor% ' | NEXT sg0% IF TestPat$ = "Y" THEN LOCATE 9, 40 PRINT "Did TestPat$ #3 'A' show up? ; ENTER to continue. "; INPUT Junk$ LOCATE 9, 40 PRINT "Did TestPat$ #3 'B' show up? ; ENTER to continue. "; INPUT Junk$ END IF ' TestPat$ = "Y" FOR sg0% = sgAURyu% TO sgAURyd% ' 3. Copy d1 UP RIGHT 'A' to D1 DOWN LEFT. sgColor% = POINT((sgAURx% - 2) * zoom%, sg0% * zoom%) ' | DrawCell sgADLx% + 1, sg0% - sgAURyu% + sgADLyu%, sgColor% ' | NEXT sg0% FOR sg0% = sgBDRyu% TO sgBDRyd% ' 3. Copy d1 DOWN RIGHT 'B' to D1 UP LEFT. sgColor% = POINT((sgBDRx% - 2) * zoom%, sg0% * zoom%) ' | DrawCell sgBULx% + 1, sg0% - sgBDRyu% + sgBULyu%, sgColor% ' | NEXT sg0% IF TestPat$ = "Y" THEN LOCATE 9, 40 PRINT "Did TestPat$ #4 'A' show up? ; ENTER to continue. "; INPUT Junk$ LOCATE 9, 40 PRINT "Did TestPat$ #4 'B' show up? ; ENTER to continue. "; INPUT Junk$ TestPat$ = "N" LOCATE 7, 50: PRINT " =END= debugging split screen." END IF ' TestPat$ = "Y" END IF ' Simulation mode ' For split screen. IF sym$ = "L" THEN ' Simulation mode dud$ = INKEY$ ELSE ' Simulation mode dud$ = CHR$(27) END IF ' Simulation mode WEND ' Simulation mode dud$ = "l" CASE ".": ' Drawing mode ' Clear screen gen% = 0: pop% = 0 LOCATE 1, 25: PRINT "G="; gen%; " " LOCATE 1, 35: PRINT "P="; pop%; " " LINE (0, 0)-(SmaxX%, SMaxY%), LGRAY%, BF CASE CHR$(13): ' Drawing mode ' 'Enter' key -- change color of 'LIFE' cells ' Actually, there are now (LIFE02.BAS) TWO sets of cursor ' colors -- one for deleting cells, and one for inserting cells. IF (IorD$ = "i") THEN 'colr% = POINT(zoom% * x%, zoom% * y%) SELECT CASE colrI% CASE DRED% colrI% = LRED% CASE LRED% colrI% = DBLUE% CASE DBLUE% colrI% = LBLUE% CASE LBLUE% colrI% = DRED% END SELECT ELSE SELECT CASE colrD% CASE BLACK% colrD% = DGREEN% CASE DGREEN% colrD% = DCYAN% CASE DCYAN% colrD% = DMAGENTA% CASE DMAGENTA% colrD% = BROWN% CASE BROWN% colrD% = LGREEN% ' Was LGRAY%, but that interferes w/ zoom% = 1 cursor. CASE LGRAY% colrD% = DGRAY% CASE DGRAY% colrD% = LGREEN% CASE LGREEN% colrD% = LCYAN% CASE LCYAN% colrD% = LMAGENTA% CASE LMAGENTA% colrD% = YELLOW% CASE YELLOW% colrD% = BLACK% ' Was WHITE%, but that interferes w/ zoom% = 1 cursor. CASE WHITE% colrD% = BLACK% END SELECT END IF CASE "R", "r": ' Drawing mode ' sym$ in {"R", "r"}; Read a file IF ((sym$ = "R") OR ((sym$ = "r") AND (INOPE$ = "F"))) THEN IF ((sym$ = "R") AND (INOPE$ = "T")) THEN CLOSE #1 INOPE$ = "F" END IF CONF$ = "N" WHILE (CONF$ <> "Y") LOCATE 1, 1: PRINT "Enter input file name:"; INPUT FilNam$ LOCATE 1, 1: PRINT " " LOCATE 1, 1: PRINT "Confirm '"; FilNam$; "' (Y or N) "; INPUT CONF$ LOCATE 1, 1: PRINT " " CONF$ = UCASE$(CONF$) WEND IF (FilNam$ <> "") THEN OPEN FilNam$ + ".LIF" FOR INPUT AS #1: ' LIFE03.BAS INOPE$ = "T" ELSE LOCATE 1, 1: PRINT "Needs more work to cancel file input." INPUT dud$ END IF END IF ' I now allow offsets, with the "x" and "y" commands. ' Comments, bracketed by "[" and "]" will be ignored. delX% = 0: delY% = 0 ' LIFE03.BAS is intended to implement '-', '|', and '/' mirrors. mulX% = 1: mulY% = 1 INxy$ = "F": ' ... for INterchange X and Y. char$ = INPUT$(1, 1) WHILE char$ <> "." SELECT CASE char$ CASE CHR$(10): ' (ignore CR and LF) IF EOF(1) THEN char$ = "." LOCATE 1, 1: PRINT "EOF "; FilNam$; " " CLOSE #1: ' LIFE03.BAS INOPE$ = "F": ' LIFE03.BAS ELSE char$ = INPUT$(1, 1) END IF CASE CHR$(13): ' (ignore CR and LF) char$ = INPUT$(1, 1) CASE CHR$(32): ' (ignore spaces) char$ = INPUT$(1, 1) CASE "[" ' LIFE03.BAS should echo comments. LOCATE 1, 1: PRINT char$; WHILE (char$ <> "]") char$ = INPUT$(1, 1) PRINT char$; WEND INPUT ; " 'Enter' to continue ", dud$ 'LOCATE 4, 4: PRINT char$; char$ = INPUT$(1, 1) 'LOCATE 5, 5: PRINT "DEBUG char$ = '"; char$; "'."; 'INPUT dud$ IF (char$ = " ") THEN char$ = INPUT$(1, 1) END IF CASE "(" ' LIFE03.BAS should echo comments. LOCATE 1, 1: PRINT char$; WHILE (char$ <> ")") char$ = INPUT$(1, 1) PRINT char$; WEND 'INPUT ; " 'Enter' to continue ", dud$ 'LOCATE 4, 4: PRINT char$; char$ = INPUT$(1, 1) 'LOCATE 5, 5: PRINT "DEBUG char$ = '"; char$; "'."; 'INPUT dud$ IF (char$ = " ") THEN char$ = INPUT$(1, 1) END IF CASE "?" ' LIFE03.BAS implements keyboard input of 'x' and 'y' data. LOCATE 1, 1: INPUT ; "Delta X:", delX% LOCATE 1, 1: INPUT ; "Delta Y:", delY% char$ = INPUT$(1, 1) IF (char$ = " ") THEN char$ = INPUT$(1, 1) END IF CASE "-" ' LIFE03.BAS implements 'mirrors'. mulY% = -1 * mulY% char$ = INPUT$(1, 1) IF (char$ = " ") THEN char$ = INPUT$(1, 1) END IF CASE "|" ' LIFE03.BAS implements 'mirrors'. mulX% = -1 * mulX% char$ = INPUT$(1, 1) IF (char$ = " ") THEN char$ = INPUT$(1, 1) END IF CASE "/" ' LIFE03.BAS implements 'mirrors'. IF (INxy$ = "Y") THEN INxy$ = "F" ELSE INxy$ = "T" END IF char$ = INPUT$(1, 1) IF (char$ = " ") THEN char$ = INPUT$(1, 1) END IF CASE "C": ' NEW INPUT #1, FileColor% char$ = INPUT$(1, 1) CASE "G" INPUT #1, gen% char$ = INPUT$(1, 1) CASE "P" INPUT #1, pop% char$ = INPUT$(1, 1) CASE "x" INPUT #1, delX% char$ = INPUT$(1, 1) CASE "X" INPUT #1, ii% IF (INxy$ = "F") THEN DrawCell (mulX% * ii%) + delX%, (mulY% * jj%) + delY%, FileColor% ELSE ' LIFE03.BAS implements '/'. DrawCell (mulY% * jj%) + delY%, (mulX% * ii%) + delX%, FileColor% END IF char$ = INPUT$(1, 1) CASE "y" INPUT #1, delY% char$ = INPUT$(1, 1) CASE "Y" 'LOCATE 6, 6: PRINT char$; 'INPUT dud$ : ' for DEBUGGING INPUT #1, jj% char$ = INPUT$(1, 1) CASE "Z" INPUT #1, zoom% char$ = INPUT$(1, 1) CASE ELSE LOCATE 2, 1 PRINT "Expected '.'; got '"; char$; "'."; ASC(char$) INPUT "?", whoa$ END SELECT WEND: ' char$ <> "." ' End command "R" for "Read a file". CASE "W": ' Drawing mode ' Write a file OPEN "LO000000.LIF" FOR APPEND AS #2 PRINT #2, "Z"; zoom%; PRINT #2, "G"; gen%; pop% = 0 FOR jj% = 1 TO (SMaxY% \ zoom%) - 2 YPrinted$ = "N" FOR ii% = 1 TO (SmaxX% \ zoom%) - 1 check% = POINT(zoom% * ii%, zoom% * jj%) IF check% = LRED% OR check% = DRED% OR check% = LBLUE% OR check% = DBLUE% THEN pop% = pop% + 1 IF (YPrinted$ = "N") THEN PRINT #2, "Y"; jj%; YPrinted$ = "Y" END IF PRINT #2, "X"; ii%; END IF NEXT ii% NEXT jj% PRINT #2, "P"; pop%; PRINT #2, "." CLOSE #2 LOCATE 1, 1: PRINT "'LO000000.LIF' written." CASE ELSE 'IF (sym$ <> "") THEN ' 'IF (sym$ = CHR$(13)) THEN ' ' PRINT "You pressed the 'Enter' key." ' 'ELSE ' ' PRINT " [sym$="; sym$; "] " ' 'END IF 'END IF x% = x% END SELECT: ' sym$ ' x% - 1 ; x% ; ... ; x% + zoom% - 2 ; x% + zoom% - 1 ; x% + zoom% ' cursor ; first ; ... ; last ; cursor ; first of next square IF (zoom% > 1) THEN ' Drawing mode IF ((oldX% <> x%) OR (oldY% <> y%)) THEN x1% = zoom% * oldX% - 1: y1% = zoom% * oldY% - 1 x2% = x1% + zoom%: y2% = y1% + zoom% LINE (x1%, y1%)-(x2%, y2%), LGRAY%, B END IF ' WHITE new square cursor. x1% = zoom% * x% - 1: y1% = zoom% * y% - 1 x2% = x1% + zoom%: y2% = y1% + zoom% LINE (x1%, y1%)-(x2%, y2%), WHITE%, B ELSE ' zoom% = 1 requires special treatment for cursor. PSET (oldX%, oldY%), oldColor% newColor% = POINT(x%, y%) IF newColor% = LRED% OR newColor% = DRED% OR newColor% = LBLUE% OR newColor% = DBLUE% THEN PSET (x%, y%), WHITE% ELSE PSET (x%, y%), DGRAY% END IF oldColor% = newColor% END IF ' Drawing mode sym$ = INKEY$ WEND: ' sym$ <> "Q" IF (INOPE$ = "T") THEN ' Drawing mode CLOSE #1: ' LIFE02.BAS INOPE$ = "F" END IF ' Drawing mode SYSTEM SUB DrawCell (x%, y%, colr%) IF (zoom% > 1) THEN x1% = zoom% * x%: y1% = zoom% * y% x2% = x1% + zoom% - 2: y2% = y1% + zoom% - 2 LINE (x1%, y1%)-(x2%, y2%), colr%, BF ELSE PSET (x%, y%), colr% END IF END SUB
Data file "PUFFERTR.LIF" for program "LIFE04.exe
[edit source]This file contains three "pictures". (1) "PUFFER TRAIN with wisp"; This is actually generation 10. The "wisp" is the first few pixels of "exhaust" left by the puffer train. (2) "Upside down puffer train without wisp"; this is a good place to start (it's generation 0). It is important NOT to try to reflect the data in these files; they have been carefully tailored to fit the "split screen" mode of the LIFE04 program. (3) A repeat of picture 2, but with an "ecologist" (a variant of the puffer train) near the right edge of the screen to facilitate my testing of the "star gate". Unlike the puffer train, the ecologist leaves no exhaust.
Z 1 x 35 y 80 C 001 [ PUFFER TRAIN with wisp. (Several PICs) ] ( 80 + 85 = 165 ) Y 85 X 83 X 86 Y 86 X 87 Y 87 X 83 X 87 Y 88 X 84 X 85 X 86 X 87 C 004 Y 91 X 80 X 81 Y 92 X 83 Y 93 X 78 X 79 X 84 X 85 Y 94 X 77 X 78 X 85 Y 95 X 76 X 77 X 85 Y 96 X 77 X 81 X 84 Y 97 X 82 C 009 Y 99 X 83 X 86 Y 100 X 87 Y 101 X 83 X 87 Y 102 X 84 X 85 X 86 X 87 . Z 1 C 001 [ upsidedown PUFFER TRAIN without wisp. ] - x 35 y 268 Y 85 X 83 X 86 Y 86 X 87 Y 87 X 83 X 87 Y 88 X 84 X 85 X 86 X 87 C 004 ( 012345 ) Y 92 X 83 ( X ) Y 93 X 84 X 85 ( XX ) Y 94 X 85 ( X ) Y 95 X 85 ( X ) Y 96 X 84 ( X ) C 14 ( wisp ) Y 91 X 80 X 81 Y 93 X 78 X 79 Y 94 X 77 X 78 Y 95 X 76 X 77 Y 96 X 77 X 81 Y 97 X 82 C 009 Y 99 X 83 X 86 Y 100 X 87 Y 101 X 83 X 87 Y 102 X 84 X 85 X 86 X 87 . [ upsidedown PUFFER TRAIN without wisp; w/ ECOLOGIST for testing. ] Z 1 G 0 [ Bare PUFFER TRAIN ] C 001 Y 166 X 119 X 120 X 121 X 122 Y 167 X 118 X 122 Y 168 X 122 Y 169 X 121 C 004 Y 172 X 119 Y 173 X 120 Y 174 X 120 Y 175 X 119 X 120 Y 176 X 118 C 009 Y 180 X 119 X 120 X 121 X 122 Y 181 X 118 X 122 Y 182 X 122 Y 183 X 121 x 1100 C 012 [ ECOLOGIST far right for testing (last pic) ] Y 166 X 119 X 120 X 121 X 122 Y 167 X 118 X 122 Y 168 X 122 Y 169 X 121 C 001 Y 172 X 119 Y 173 X 120 Y 174 X 120 Y 175 X 119 X 120 Y 176 X 118 C 004 Y 180 X 119 X 120 X 121 X 122 Y 181 X 118 X 122 Y 182 X 122 Y 183 X 118 X 121 C 001 ( added space ship ) Y 180 X 112 X 113 Y 181 X 110 X 111 X 113 X 114 Y 182 X 110 X 111 X 112 X 113 Y 183 X 111 X 112 P 056 .
Can a Glider go around a Corner?
[edit source],NO! Gliders always glide in straight lines. Howerer, a SIGNAL, such as can be conveyed by a glider CAN be transmitted around a corner. I engineered the following as a way to do this.
Ray Calvin Baker (talk) 22:37, 16 March 2012 (UTC)
Just use the first "picture" from this file. It uses three "Thin guns"; two (with both red and blue pixels) are control signal generators, to detect an incoming signal, send out new gliders in two directions, then clean up some stray blocks and beehives afterward. I wanted to prove to myself that I could do engineering with this system. It looks a lot like an animated circuit diagram when it's in operation. Spacing and timing is critical when designing LIFE machinery.
Ray Calvin Baker (talk) 20:41, 18 April 2012 (UTC)
Z 003 G 001 [ CORNER using THIN GUNS ] ( "1" useless early glider ) C 015 x 100 y 045 Y 006 X 130 X 131 X 132 Y 007 X 132 Y 008 X 131 ( "2" another useless early glider ) C 015 x 100 y 045 Y 036 X 079 X 080 Y 037 X 078 X 079 Y 038 X 080 ( "3" useless early left Herschel glider ) C 015 x 100 y 045 Y 066 X 070 X 071 X 072 Y 067 X 072 Y 068 X 071 ( "4" useless early right Herschel glider ) C 015 x 100 y 045 Y 066 X 109 X 110 Y 067 X 108 X 109 Y 068 X 110 ( "5" useless row of in-flight gliders ) C 015 x 100 y 045 Y 075 X 010 X 011 Y 076 X 010 X 012 Y 077 X 010 ( "6" 2nd useless in-flight glider ) C 015 x 100 y 045 Y 076 X 047 Y 077 X 048 Y 078 X 046 X 047 X 048 ( "7" 3rd useless in-flight glider ) C 015 x 100 y 045 Y 076 X 134 Y 077 X 132 X 133 Y 078 X 133 X 134 ( "8" rightmost useless in-flight glider ) C 015 x 100 y 045 Y 075 X 169 Y 076 X 169 X 170 Y 077 X 168 X 170 ( "9" useless leftover glider ) C 015 x 100 y 045 Y 088 X 132 Y 089 X 131 X 132 Y 090 X 131 X 133 ( "10" another useless leftover glider ) C 015 x 100 y 045 Y 088 X 048 X 049 Y 089 X 047 X 049 Y 090 X 049 ( "11" premature left glider ) C 015 x 100 y 045 Y 096 X 040 X 041 X 042 Y 097 X 042 Y 098 X 041 ( "12" premature right glider ) C 015 x 100 y 045 Y 096 X 139 X 140 Y 097 X 138 X 139 Y 098 X 140 [ "a" top left bouncer gun ] C 001 x 100 y 045 Y 055 X 038 Y 056 X 037 X 038 X 039 X 040 Y 057 X 020 X 021 X 036 X 037 X 039 X 041 X 045 X 046 Y 058 X 012 X 020 X 023 X 035 X 036 X 037 X 039 X 042 X 045 X 046 Y 059 X 011 X 015 X 016 X 024 X 036 X 037 X 039 X 041 Y 060 X 011 X 017 X 024 X 037 X 038 X 039 X 040 Y 061 X 012 X 013 X 014 X 015 X 016 X 024 X 032 X 038 Y 062 X 020 X 023 X 033 Y 063 X 020 X 021 X 031 X 032 X 033 [ "b" left bouncing glider ] C 009 x 100 y 045 Y 068 X 029 X 031 Y 069 X 029 X 030 Y 070 X 030 [ "c" left eater west (was x 070 y 075) ] C 004 x 025 y 120 Y 069 X 003 X 004 Y 070 X 004 Y 071 X 004 X 006 Y 072 X 005 X 006 [ "d" bottom left bouncer gun (was x 085 y 180) ] C 9 x 040 y 135 Y 083 X 017 X 018 X 019 X 029 X 030 Y 084 X 017 X 027 X 030 Y 085 X 012 X 018 X 026 X 034 X 035 X 036 X 037 X 038 Y 086 X 010 X 011 X 012 X 013 X 026 X 033 X 039 Y 087 X 009 X 011 X 013 X 014 X 026 X 034 X 035 X 039 Y 088 X 004 X 005 X 008 X 011 X 013 X 014 X 015 X 027 X 030 X 038 Y 089 X 004 X 005 X 009 X 011 X 013 X 014 X 029 X 030 Y 090 X 010 X 011 X 012 X 013 Y 091 X 012 [ "e" left eater ] C 004 x 100 y 045 Y 93 X 63 X 64 Y 94 X 63 X 65 Y 95 X 65 Y 96 X 65 X 66 [ "f" left thinned gun ] C 9 x 100 y 45 Y 96 X 29 X 30 Y 97 X 29 X 32 Y 98 X 21 X 22 X 23 X 24 X 25 X 33 X 47 Y 99 X 20 X 26 X 33 X 46 X 47 X 48 X 49 Y 100 X 20 X 24 X 25 X 33 X 45 X 46 X 48 X 50 Y 101 X 21 X 29 X 32 X 44 X 45 X 46 X 48 X 51 X 54 X 55 Y 102 X 29 X 30 X 45 X 46 X 48 X 50 X 54 X 55 Y 103 X 46 X 47 X 48 X 49 Y 104 X 47 [ "m" top right bouncer gun ] C 1 x 100 y 45 Y 55 X 142 Y 56 X 141 X 143 Y 57 X 134 X 135 X 139 X 140 X 144 X 159 X 160 Y 58 X 134 X 135 X 139 X 140 X 144 X 158 X 160 Y 59 X 139 X 140 X 144 X 157 X 158 X 159 X 164 X 165 X 167 X 168 X 169 Y 60 X 141 X 143 X 156 X 157 X 158 X 163 X 166 X 167 X 168 X 169 Y 61 X 142 X 149 X 157 X 158 X 159 X 164 X 165 Y 62 X 147 X 148 X 158 X 160 Y 63 X 148 X 149 X 159 X 160 [ "n" right bouncing glider ] C 4 x 100 y 45 Y 67 X 150 Y 68 X 151 Y 69 X 149 X 150 X 151 [ "o" right eater east ] C 4 x 130 y 45 Y 69 X 176 X 177 Y 70 X 176 Y 71 X 174 X 176 Y 72 X 174 X 175 [ "p" bottom right bouncer gun ] C 12 x 100 y 75 Y 83 X 150 X 151 X 161 X 162 Y 84 X 150 X 152 X 162 X 163 Y 85 X 145 X 146 X 151 X 152 X 153 X 161 X 168 Y 86 X 141 X 142 X 143 X 144 X 147 X 152 X 153 X 154 X 167 X 169 Y 87 X 141 X 142 X 143 X 145 X 146 X 151 X 152 X 153 X 166 X 170 X 171 Y 88 X 150 X 152 X 166 X 170 X 171 X 175 X 176 Y 89 X 150 X 151 X 166 X 170 X 171 X 175 X 176 Y 90 X 167 X 169 Y 91 X 168 [ "q" right eater ] C 12 x 100 y 45 Y 93 X 116 X 117 Y 94 X 115 X 117 Y 95 X 115 Y 96 X 114 X 115 [ "r" right thinned gun ] C 12 x 100 y 45 Y 96 X 150 X 151 Y 97 X 149 X 151 Y 98 X 133 X 148 X 149 X 150 X 155 X 156 Y 99 X 132 X 134 X 147 X 148 X 149 X 154 X 157 X 158 X 159 X 160 Y 100 X 130 X 131 X 135 X 148 X 149 X 150 X 155 X 156 X 158 X 159 X 160 Y 101 X 125 X 126 X 130 X 131 X 135 X 149 X 151 Y 102 X 125 X 126 X 130 X 131 X 135 X 150 X 151 Y 103 X 132 X 134 Y 104 X 133 - [ "M" reflected bouncer gun ] C 1 x 138 y 135 Y 55 X 142 Y 56 X 141 X 143 Y 57 X 134 X 135 X 139 X 140 X 144 X 159 X 160 Y 58 X 134 X 135 X 139 X 140 X 144 X 158 X 160 Y 59 X 139 X 140 X 144 X 157 X 158 X 159 X 164 X 165 X 167 X 168 X 169 Y 60 X 141 X 143 X 156 X 157 X 158 X 163 X 166 X 167 X 168 X 169 Y 61 X 142 X 149 X 157 X 158 X 159 X 164 X 165 Y 62 X 147 X 148 X 158 X 160 Y 63 X 148 X 149 X 159 X 160 [ "N" reflected bouncing glider ] C 4 x 153 y 120 Y 67 X 150 Y 68 X 151 Y 69 X 149 X 150 X 151 [ "O" reflected eater ] C 4 x 168 y 135 Y 69 X 176 X 177 Y 70 X 176 Y 71 X 174 X 176 Y 72 X 174 X 175 ( "P" reflected bouncer gun ) C 012 x 138 y 105 Y 083 X 150 X 151 X 161 X 162 Y 084 X 150 X 152 X 162 X 163 Y 085 X 145 X 146 X 151 X 152 X 153 X 161 X 168 Y 086 X 141 X 142 X 143 X 144 X 147 X 152 X 153 X 154 X 167 X 169 Y 087 X 141 X 142 X 143 X 145 X 146 X 151 X 152 X 153 X 166 X 170 X 171 Y 088 X 150 X 152 X 166 X 170 X 171 X 175 X 176 Y 089 X 150 X 151 X 166 X 170 X 171 X 175 X 176 Y 090 X 167 X 169 Y 091 X 168 ( "Q" reflected eater ) C 012 x 138 y 135 Y 093 X 116 X 117 Y 094 X 115 X 117 Y 095 X 115 Y 096 X 114 X 115 ( "R" reflected thinned gun ) C 012 x 138 y 135 Y 096 X 150 X 151 Y 097 X 149 X 151 Y 098 X 133 X 148 X 149 X 150 X 155 X 156 Y 099 X 132 X 134 X 147 X 148 X 149 X 154 X 157 X 158 X 159 X 160 Y 100 X 130 X 131 X 135 X 148 X 149 X 150 X 155 X 156 X 158 X 159 X 160 Y 101 X 125 X 126 X 130 X 131 X 135 X 149 X 151 Y 102 X 125 X 126 X 130 X 131 X 135 X 150 X 151 Y 103 X 132 X 134 Y 104 X 133 - ( end reflection ) [ I need another glider to bounce the "thinner". 206, -22] x 246 y -22 C 009 Y 050 X 060 X 062 Y 051 X 061 X 062 Y 052 X 061 x 040 y 000 C 001 [ NEW EATER 1 of 3 ] Y 086 X 144 Y 087 X 144 X 145 X 146 Y 088 X 147 Y 089 X 146 X 147 x 040 y 000 C 004 [ NEW EATER 2 of 3 ] Y 083 X 159 X 160 Y 084 X 159 Y 085 X 157 X 159 Y 086 X 157 X 158 x 040 y 000 C 009 [ NEW EATER 3 of 3 ] Y 116 X 158 X 159 Y 117 X 157 X 159 Y 118 X 157 Y 119 X 156 X 157 [ Ready for next command after 1 last 'Enter'. ] . [ TWO ] Z 3 G 1694 Y 1 X 43 X 44 X 50 X 51 X 136 X 137 Y 2 X 43 X 44 X 50 X 51 X 136 X 137 Y 18 X 118 X 119 Y 19 X 119 X 120 Y 20 X 118 Y 47 X 91 Y 48 X 91 X 92 Y 49 X 92 X 93 Y 50 X 91 X 92 Y 55 X 35 X 144 X 146 Y 56 X 33 X 35 X 144 X 148 Y 57 X 23 X 24 X 31 X 32 X 45 X 46 X 134 X 135 X 148 X 156 Y 58 X 22 X 26 X 31 X 32 X 45 X 46 X 134 X 135 X 144 X 149 X 154 X 155 X 156 X 157 Y 59 X 11 X 12 X 21 X 27 X 31 X 32 X 148 X 153 X 155 X 157 X 158 X 168 X 169 Y 60 X 11 X 12 X 21 X 25 X 27 X 28 X 33 X 35 X 144 X 148 X 152 X 155 X 157 X 158 X 159 X 168 X 169 Y 61 X 21 X 27 X 35 X 144 X 146 X 153 X 155 X 157 X 158 Y 62 X 22 X 26 X 154 X 155 X 156 X 157 Y 63 X 23 X 24 X 156 Y 64 X 34 X 145 Y 65 X 35 X 36 X 145 X 147 Y 66 X 34 X 35 X 145 X 146 Y 69 X 3 X 4 X 176 X 177 Y 70 X 4 X 176 Y 71 X 4 X 6 X 138 X 174 X 176 Y 72 X 5 X 6 X 41 X 43 X 137 X 174 X 175 Y 73 X 42 X 43 X 137 X 138 X 139 Y 74 X 22 X 23 X 24 X 42 X 157 X 158 Y 75 X 24 X 156 X 157 Y 76 X 23 X 158 Y 78 X 58 X 59 Y 79 X 49 X 59 X 60 X 130 Y 80 X 15 X 16 X 50 X 51 X 58 X 130 X 132 X 164 X 165 Y 81 X 14 X 15 X 49 X 50 X 130 X 131 X 163 X 165 Y 82 X 16 X 165 Y 83 X 26 X 27 X 154 Y 84 X 24 X 28 X 153 X 154 X 155 X 156 Y 85 X 15 X 23 X 29 X 51 X 152 X 153 X 155 X 157 X 164 X 166 Y 86 X 15 X 17 X 22 X 23 X 25 X 29 X 38 X 39 X 51 X 52 X 128 X 129 X 130 X 141 X 142 X 151 X 152 X 153 X 155 X 158 X 162 X 166 Y 87 X 18 X 19 X 23 X 29 X 38 X 39 X 50 X 52 X 128 X 141 X 142 X 152 X 153 X 155 X 157 X 162 Y 88 X 4 X 5 X 18 X 19 X 24 X 28 X 129 X 153 X 154 X 155 X 156 X 161 X 166 X 175 X 176 Y 89 X 4 X 5 X 18 X 19 X 26 X 27 X 154 X 162 X 175 X 176 Y 90 X 15 X 17 X 162 X 166 Y 91 X 15 X 164 X 166 Y 93 X 43 X 44 X 63 X 64 X 116 X 117 X 136 X 137 Y 94 X 44 X 45 X 63 X 65 X 115 X 117 X 136 X 138 Y 95 X 43 X 65 X 115 X 136 Y 96 X 32 X 33 X 65 X 66 X 114 X 115 X 147 Y 97 X 31 X 35 X 145 X 146 X 147 X 148 Y 98 X 30 X 36 X 44 X 135 X 137 X 144 X 146 X 148 X 149 Y 99 X 20 X 21 X 30 X 34 X 36 X 37 X 42 X 44 X 135 X 139 X 143 X 146 X 148 X 149 X 150 X 159 X 160 Y 100 X 20 X 21 X 30 X 36 X 40 X 41 X 139 X 144 X 146 X 148 X 149 X 159 X 160 Y 101 X 31 X 35 X 40 X 41 X 54 X 55 X 125 X 126 X 135 X 140 X 145 X 146 X 147 X 148 Y 102 X 32 X 33 X 40 X 41 X 54 X 55 X 125 X 126 X 139 X 147 Y 103 X 42 X 44 X 135 X 139 Y 104 X 44 X 75 X 135 X 137 Y 105 X 74 Y 106 X 74 X 75 X 76 P 369 . Z 3 G 1714 [ THREE ] Y 1 X 136 X 137 Y 2 X 136 X 137 Y 13 X 123 X 124 Y 14 X 124 X 125 Y 15 X 123 Y 48 X 88 X 89 X 101 Y 49 X 88 X 89 X 99 X 100 X 101 Y 50 X 99 X 101 Y 51 X 99 Y 55 X 37 X 38 X 142 Y 56 X 36 X 40 X 140 X 141 X 142 X 143 Y 57 X 20 X 21 X 35 X 41 X 45 X 46 X 134 X 135 X 139 X 141 X 143 X 144 X 159 X 160 Y 58 X 20 X 21 X 35 X 39 X 41 X 42 X 45 X 46 X 134 X 135 X 138 X 141 X 143 X 144 X 145 X 157 X 160 X 168 Y 59 X 11 X 12 X 16 X 23 X 24 X 35 X 41 X 139 X 141 X 143 X 144 X 156 X 164 X 165 X 169 Y 60 X 11 X 13 X 17 X 23 X 24 X 25 X 36 X 40 X 140 X 141 X 142 X 143 X 156 X 163 X 169 Y 61 X 12 X 13 X 14 X 15 X 16 X 23 X 24 X 37 X 38 X 142 X 148 X 156 X 164 X 165 X 166 X 167 X 168 Y 62 X 13 X 14 X 15 X 20 X 21 X 31 X 33 X 147 X 157 X 160 Y 63 X 20 X 21 X 32 X 33 X 147 X 148 X 149 X 159 X 160 Y 64 X 32 Y 69 X 3 X 4 X 27 X 28 X 29 X 39 X 140 X 152 X 153 X 176 X 177 Y 70 X 4 X 29 X 40 X 41 X 140 X 142 X 151 X 152 X 176 Y 71 X 4 X 6 X 28 X 39 X 40 X 140 X 141 X 153 X 174 X 176 Y 72 X 5 X 6 X 174 X 175 Y 73 X 63 X 64 Y 74 X 64 X 65 Y 75 X 10 X 11 X 63 X 169 X 170 Y 76 X 9 X 10 X 133 X 168 X 170 Y 77 X 11 X 46 X 48 X 132 X 170 Y 78 X 47 X 48 X 132 X 133 X 134 Y 79 X 47 Y 82 X 18 Y 83 X 17 X 18 X 29 X 30 X 150 X 151 X 161 X 162 X 163 Y 84 X 17 X 19 X 29 X 30 X 35 X 36 X 37 X 150 X 153 X 163 Y 85 X 12 X 13 X 26 X 27 X 34 X 35 X 36 X 37 X 38 X 142 X 143 X 144 X 145 X 146 X 154 X 162 X 168 Y 86 X 10 X 14 X 25 X 26 X 27 X 33 X 37 X 39 X 141 X 147 X 154 X 167 X 168 X 169 X 170 Y 87 X 9 X 15 X 26 X 27 X 34 X 38 X 39 X 141 X 145 X 146 X 154 X 166 X 167 X 169 X 171 Y 88 X 4 X 5 X 8 X 9 X 11 X 15 X 29 X 30 X 48 X 49 X 131 X 132 X 142 X 150 X 153 X 165 X 166 X 167 X 169 X 172 X 175 X 176 Y 89 X 4 X 5 X 9 X 15 X 29 X 30 X 49 X 50 X 131 X 133 X 150 X 151 X 166 X 167 X 169 X 171 X 175 X 176 Y 90 X 10 X 14 X 48 X 131 X 167 X 168 X 169 X 170 Y 91 X 12 X 13 X 168 Y 93 X 63 X 64 X 116 X 117 Y 94 X 63 X 65 X 115 X 117 Y 95 X 41 X 65 X 115 Y 96 X 29 X 30 X 41 X 42 X 65 X 66 X 114 X 115 X 138 X 139 X 140 X 150 X 151 Y 97 X 22 X 23 X 24 X 29 X 30 X 40 X 42 X 138 X 148 X 151 Y 98 X 21 X 22 X 23 X 24 X 25 X 32 X 33 X 46 X 47 X 133 X 139 X 147 X 155 X 156 X 157 X 158 X 159 Y 99 X 20 X 22 X 26 X 32 X 33 X 34 X 45 X 49 X 131 X 132 X 133 X 134 X 147 X 154 X 160 Y 100 X 20 X 21 X 25 X 32 X 33 X 44 X 50 X 130 X 132 X 134 X 135 X 147 X 155 X 156 X 160 Y 101 X 29 X 30 X 44 X 48 X 50 X 51 X 54 X 55 X 125 X 126 X 129 X 132 X 134 X 135 X 136 X 148 X 151 X 159 Y 102 X 29 X 30 X 44 X 50 X 54 X 55 X 125 X 126 X 130 X 132 X 134 X 135 X 150 X 151 Y 103 X 45 X 49 X 131 X 132 X 133 X 134 Y 104 X 46 X 47 X 133 Y 109 X 70 Y 110 X 69 Y 111 X 69 X 70 X 71 P 432 . Z 3 G 1714 [ FOUR ] Y 1 X 136 X 137 Y 2 X 136 X 137 Y 13 X 123 X 124 Y 14 X 124 X 125 Y 15 X 123 Y 48 X 101 Y 49 X 99 X 100 X 101 Y 50 X 99 X 101 Y 51 X 99 Y 55 X 37 X 38 X 142 Y 56 X 36 X 40 X 140 X 141 X 142 X 143 Y 57 X 20 X 21 X 35 X 41 X 45 X 46 X 134 X 135 X 139 X 141 X 143 X 144 X 159 X 160 Y 58 X 20 X 21 X 35 X 39 X 41 X 42 X 45 X 46 X 134 X 135 X 138 X 141 X 143 X 144 X 145 X 157 X 160 X 168 Y 59 X 11 X 12 X 16 X 23 X 24 X 35 X 41 X 139 X 141 X 143 X 144 X 156 X 164 X 165 X 169 Y 60 X 11 X 13 X 17 X 23 X 24 X 25 X 36 X 40 X 140 X 141 X 142 X 143 X 156 X 163 X 169 Y 61 X 12 X 13 X 14 X 15 X 16 X 23 X 24 X 37 X 38 X 142 X 148 X 156 X 164 X 165 X 166 X 167 X 168 Y 62 X 13 X 14 X 15 X 20 X 21 X 31 X 33 X 147 X 157 X 160 Y 63 X 20 X 21 X 32 X 33 X 147 X 148 X 149 X 159 X 160 Y 64 X 32 Y 69 X 3 X 4 X 27 X 28 X 29 X 39 X 140 X 152 X 153 X 176 X 177 Y 70 X 4 X 29 X 40 X 41 X 140 X 142 X 151 X 152 X 176 Y 71 X 4 X 6 X 28 X 39 X 40 X 140 X 141 X 153 X 174 X 176 Y 72 X 5 X 6 X 174 X 175 Y 73 X 63 X 64 Y 74 X 64 X 65 Y 75 X 10 X 11 X 63 X 169 X 170 Y 76 X 9 X 10 X 133 X 168 X 170 Y 77 X 11 X 46 X 48 X 132 X 170 Y 78 X 47 X 48 X 132 X 133 X 134 Y 79 X 47 Y 82 X 18 Y 83 X 17 X 18 X 29 X 30 X 150 X 151 X 161 X 162 X 163 Y 84 X 17 X 19 X 29 X 30 X 35 X 36 X 37 X 150 X 153 X 163 Y 85 X 12 X 13 X 26 X 27 X 34 X 35 X 36 X 37 X 38 X 142 X 143 X 144 X 145 X 146 X 154 X 162 X 168 Y 86 X 10 X 14 X 25 X 26 X 27 X 33 X 37 X 39 X 141 X 147 X 154 X 167 X 168 X 169 X 170 Y 87 X 9 X 15 X 26 X 27 X 34 X 38 X 39 X 141 X 145 X 146 X 154 X 166 X 167 X 169 X 171 Y 88 X 4 X 5 X 8 X 9 X 11 X 15 X 29 X 30 X 48 X 49 X 131 X 132 X 142 X 150 X 153 X 165 X 166 X 167 X 169 X 172 X 175 X 176 Y 89 X 4 X 5 X 9 X 15 X 29 X 30 X 49 X 50 X 131 X 133 X 150 X 151 X 166 X 167 X 169 X 171 X 175 X 176 Y 90 X 10 X 14 X 48 X 131 X 167 X 168 X 169 X 170 Y 91 X 12 X 13 X 168 Y 93 X 63 X 64 X 116 X 117 Y 94 X 63 X 65 X 115 X 117 Y 95 X 41 X 65 X 115 Y 96 X 29 X 30 X 41 X 42 X 65 X 66 X 114 X 115 X 138 X 139 X 140 X 150 X 151 Y 97 X 22 X 23 X 24 X 29 X 30 X 40 X 42 X 138 X 148 X 151 Y 98 X 21 X 22 X 23 X 24 X 25 X 32 X 33 X 46 X 47 X 133 X 139 X 147 X 155 X 156 X 157 X 158 X 159 Y 99 X 20 X 22 X 26 X 32 X 33 X 34 X 45 X 49 X 131 X 132 X 133 X 134 X 147 X 154 X 160 Y 100 X 20 X 21 X 25 X 32 X 33 X 44 X 50 X 130 X 132 X 134 X 135 X 147 X 155 X 156 X 160 Y 101 X 29 X 30 X 44 X 48 X 50 X 51 X 54 X 55 X 125 X 126 X 129 X 132 X 134 X 135 X 136 X 148 X 151 X 159 Y 102 X 29 X 30 X 44 X 50 X 54 X 55 X 125 X 126 X 130 X 132 X 134 X 135 X 150 X 151 Y 103 X 45 X 49 X 131 X 132 X 133 X 134 Y 104 X 46 X 47 X 133 Y 109 X 70 Y 110 X 69 Y 111 X 69 X 70 X 71 P 428 . Z 3 G 1735 [ FIVE ] Y 1 X 136 X 137 Y 2 X 136 X 137 Y 8 X 128 X 129 X 130 Y 9 X 130 Y 10 X 129 Y 50 X 99 X 100 X 101 Y 51 X 99 X 104 Y 52 X 100 X 104 X 105 Y 53 X 105 X 106 Y 54 X 102 X 105 Y 55 X 34 X 35 X 103 X 104 X 145 X 146 Y 56 X 34 X 35 X 36 X 145 X 146 Y 57 X 20 X 36 X 37 X 39 X 45 X 46 X 134 X 135 X 142 X 143 X 154 X 159 Y 58 X 18 X 20 X 25 X 26 X 27 X 36 X 39 X 45 X 46 X 134 X 135 X 141 X 142 X 143 X 154 X 159 X 161 Y 59 X 11 X 12 X 17 X 19 X 36 X 37 X 39 X 142 X 143 X 154 X 162 X 163 X 168 X 169 Y 60 X 11 X 12 X 16 X 19 X 27 X 30 X 31 X 34 X 35 X 36 X 145 X 146 X 149 X 150 X 162 X 163 X 168 X 169 Y 61 X 17 X 19 X 27 X 31 X 34 X 35 X 145 X 146 X 149 X 152 X 153 X 162 X 163 Y 62 X 18 X 20 X 27 X 30 X 150 X 151 X 152 X 153 X 159 X 161 Y 63 X 20 X 29 X 30 X 151 X 159 Y 65 X 148 Y 66 X 31 X 33 X 149 Y 67 X 31 X 32 X 147 X 148 X 149 Y 68 X 32 X 68 X 69 X 70 Y 69 X 3 X 4 X 70 X 176 X 177 Y 70 X 4 X 69 X 176 Y 71 X 4 X 6 X 174 X 176 Y 72 X 5 X 6 X 174 X 175 Y 74 X 45 X 136 Y 75 X 46 X 134 X 135 Y 76 X 44 X 45 X 46 X 135 X 136 Y 77 X 12 X 13 X 167 Y 78 X 12 X 14 X 167 X 168 Y 79 X 12 X 166 X 168 Y 80 X 50 X 51 X 129 Y 81 X 54 X 127 X 128 X 129 X 130 Y 82 X 49 X 126 X 127 X 128 X 129 X 131 Y 83 X 20 X 21 X 30 X 49 X 50 X 51 X 54 X 126 X 127 X 130 X 131 X 151 X 159 Y 84 X 20 X 23 X 30 X 32 X 149 X 151 X 157 X 158 X 159 X 160 Y 85 X 15 X 16 X 19 X 23 X 31 X 33 X 147 X 148 X 157 X 158 X 161 X 164 X 165 Y 86 X 14 X 15 X 16 X 19 X 20 X 23 X 31 X 34 X 38 X 39 X 141 X 142 X 147 X 148 X 160 X 161 X 164 X 165 Y 87 X 11 X 13 X 14 X 31 X 33 X 38 X 39 X 141 X 142 X 147 X 148 X 156 X 167 X 168 Y 88 X 4 X 5 X 11 X 14 X 23 X 24 X 25 X 30 X 32 X 149 X 151 X 156 X 167 X 168 X 169 X 175 X 176 Y 89 X 4 X 5 X 11 X 13 X 14 X 30 X 151 X 156 X 167 X 168 X 175 X 176 Y 90 X 14 X 15 X 16 X 46 X 47 X 134 X 164 X 165 Y 91 X 15 X 16 X 45 X 47 X 133 X 134 X 164 X 165 Y 92 X 47 X 133 X 135 Y 93 X 63 X 64 X 116 X 117 Y 94 X 63 X 65 X 115 X 117 Y 95 X 65 X 115 Y 96 X 29 X 38 X 39 X 65 X 66 X 114 X 115 X 142 X 150 Y 97 X 27 X 29 X 36 X 39 X 141 X 142 X 143 X 144 X 150 X 152 Y 98 X 26 X 28 X 36 X 40 X 43 X 44 X 136 X 137 X 140 X 143 X 144 X 153 X 154 Y 99 X 20 X 21 X 25 X 28 X 36 X 39 X 40 X 43 X 44 X 45 X 136 X 137 X 140 X 141 X 153 X 154 X 159 X 160 Y 100 X 20 X 21 X 26 X 28 X 45 X 46 X 48 X 133 X 134 X 145 X 153 X 154 X 159 X 160 Y 101 X 27 X 29 X 34 X 35 X 36 X 45 X 48 X 54 X 55 X 125 X 126 X 132 X 133 X 134 X 145 X 150 X 152 Y 102 X 29 X 45 X 46 X 48 X 54 X 55 X 125 X 126 X 133 X 134 X 145 X 150 Y 103 X 43 X 44 X 45 X 136 X 137 Y 104 X 43 X 44 X 136 X 137 Y 115 X 64 X 66 Y 116 X 64 X 65 Y 117 X 65 P 417 . Z 3 G 1797 [ SIX ] Y 34 X 84 X 85 Y 35 X 84 X 86 Y 36 X 84 Y 38 X 105 X 106 Y 39 X 104 Y 40 X 110 X 111 X 113 Y 41 X 113 Y 42 X 104 X 107 X 109 X 110 X 111 X 112 X 113 Y 43 X 105 X 106 X 107 X 110 X 111 Y 44 X 107 X 109 Y 45 X 109 X 110 X 112 Y 46 X 111 X 113 Y 47 X 107 X 108 X 111 X 114 Y 48 X 111 X 114 Y 49 X 110 X 113 Y 50 X 109 X 110 Y 51 X 110 X 113 Y 52 X 84 X 85 X 111 X 112 X 114 X 117 Y 53 X 83 X 85 X 112 X 114 X 116 X 117 Y 54 X 85 X 112 X 116 X 117 Y 55 X 35 X 116 X 144 X 146 Y 56 X 35 X 36 X 37 X 38 X 101 X 102 X 116 X 117 X 143 X 146 Y 57 X 19 X 36 X 37 X 38 X 39 X 45 X 46 X 101 X 102 X 113 X 114 X 118 X 134 X 135 X 142 X 143 X 154 X 161 Y 58 X 18 X 20 X 26 X 27 X 36 X 39 X 45 X 46 X 115 X 116 X 117 X 134 X 135 X 140 X 141 X 145 X 154 X 160 X 162 Y 59 X 11 X 12 X 16 X 17 X 21 X 36 X 37 X 38 X 39 X 116 X 142 X 143 X 153 X 160 X 161 X 163 X 168 X 169 Y 60 X 11 X 12 X 16 X 17 X 21 X 26 X 28 X 30 X 31 X 35 X 36 X 37 X 38 X 143 X 146 X 149 X 150 X 160 X 161 X 163 X 164 X 168 X 169 Y 61 X 16 X 17 X 21 X 27 X 28 X 32 X 35 X 114 X 115 X 144 X 146 X 149 X 152 X 153 X 154 X 160 X 161 X 163 Y 62 X 18 X 20 X 31 X 113 X 115 X 149 X 150 X 151 X 152 X 160 X 162 Y 63 X 19 X 28 X 31 X 110 X 111 X 113 X 115 X 116 X 150 X 151 X 161 Y 64 X 110 X 113 X 115 X 116 Y 65 X 111 X 113 X 115 X 116 Y 66 X 112 X 113 Y 67 X 38 X 143 Y 68 X 39 X 141 X 142 Y 69 X 3 X 4 X 37 X 38 X 39 X 142 X 143 X 176 X 177 Y 70 X 4 X 110 X 176 Y 71 X 4 X 6 X 108 X 109 X 174 X 176 Y 72 X 5 X 6 X 109 X 110 X 174 X 175 Y 75 X 46 X 134 X 136 Y 76 X 44 X 46 X 134 X 135 Y 77 X 45 X 46 X 135 Y 78 X 18 X 19 X 161 X 162 Y 79 X 19 X 20 X 161 X 163 Y 80 X 18 X 161 Y 82 X 54 X 55 X 126 Y 83 X 19 X 22 X 31 X 53 X 55 X 125 X 126 X 149 X 159 X 160 Y 84 X 19 X 30 X 32 X 55 X 125 X 127 X 148 X 150 X 158 X 159 X 160 X 161 Y 85 X 15 X 18 X 22 X 23 X 29 X 33 X 34 X 147 X 149 X 150 X 156 X 157 X 158 X 161 X 164 X 166 Y 86 X 12 X 13 X 14 X 15 X 19 X 20 X 22 X 24 X 29 X 33 X 34 X 38 X 39 X 141 X 142 X 146 X 147 X 149 X 150 X 160 X 161 X 164 X 167 Y 87 X 11 X 12 X 13 X 14 X 29 X 33 X 34 X 38 X 39 X 141 X 142 X 147 X 149 X 150 X 157 X 167 X 168 Y 88 X 4 X 5 X 11 X 14 X 23 X 24 X 30 X 32 X 148 X 150 X 156 X 165 X 169 X 170 X 175 X 176 Y 89 X 4 X 5 X 11 X 12 X 13 X 14 X 31 X 149 X 156 X 167 X 168 X 175 X 176 Y 90 X 12 X 13 X 14 X 15 X 46 X 47 X 48 X 133 X 134 X 164 X 167 Y 91 X 15 X 48 X 132 X 133 X 164 X 166 Y 92 X 47 X 134 Y 93 X 63 X 64 X 116 X 117 Y 94 X 63 X 65 X 115 X 117 Y 95 X 65 X 115 Y 96 X 28 X 37 X 40 X 65 X 66 X 114 X 115 X 141 X 142 X 152 Y 97 X 27 X 29 X 40 X 140 X 141 X 142 X 143 X 151 X 153 Y 98 X 25 X 26 X 30 X 36 X 37 X 41 X 44 X 135 X 137 X 140 X 143 X 144 X 145 X 151 X 152 X 154 Y 99 X 20 X 21 X 25 X 26 X 30 X 35 X 37 X 39 X 40 X 44 X 45 X 46 X 47 X 134 X 137 X 140 X 141 X 151 X 152 X 154 X 155 X 159 X 160 Y 100 X 20 X 21 X 25 X 26 X 30 X 45 X 46 X 47 X 48 X 133 X 134 X 144 X 151 X 152 X 154 X 159 X 160 Y 101 X 27 X 29 X 35 X 36 X 45 X 48 X 54 X 55 X 125 X 126 X 131 X 132 X 136 X 145 X 151 X 153 Y 102 X 28 X 45 X 46 X 47 X 48 X 54 X 55 X 125 X 126 X 133 X 134 X 145 X 152 Y 103 X 44 X 45 X 46 X 47 X 134 X 137 Y 104 X 44 X 135 X 137 Y 130 X 50 Y 131 X 48 X 49 Y 132 X 49 X 50 P 507 . Z 3 G 1842 [ SEVEN (Last) ] Y 23 X 73 X 74 Y 24 X 72 X 73 Y 25 X 74 Y 41 X 95 X 96 Y 42 X 96 X 97 Y 43 X 95 Y 50 X 119 X 120 Y 51 X 119 X 121 Y 52 X 120 X 121 Y 55 X 36 X 143 X 145 Y 56 X 33 X 34 X 35 X 36 X 101 X 102 X 143 X 146 Y 57 X 24 X 32 X 33 X 34 X 35 X 45 X 46 X 101 X 102 X 134 X 135 X 146 X 147 X 156 Y 58 X 23 X 25 X 32 X 35 X 45 X 46 X 134 X 135 X 144 X 148 X 149 X 155 X 157 Y 59 X 11 X 12 X 22 X 26 X 27 X 32 X 33 X 34 X 35 X 41 X 139 X 140 X 146 X 147 X 154 X 156 X 157 X 168 X 169 Y 60 X 11 X 12 X 22 X 26 X 27 X 33 X 34 X 35 X 36 X 41 X 109 X 110 X 138 X 143 X 146 X 153 X 154 X 156 X 157 X 168 X 169 Y 61 X 22 X 26 X 27 X 36 X 109 X 110 X 143 X 145 X 154 X 156 X 157 Y 62 X 23 X 25 X 155 X 157 Y 63 X 24 X 146 X 156 Y 64 X 33 X 35 X 145 Y 65 X 34 X 35 X 145 X 146 X 147 Y 66 X 34 Y 67 X 29 X 30 X 31 X 150 X 151 Y 68 X 31 X 149 X 150 Y 69 X 3 X 4 X 30 X 151 X 176 X 177 Y 70 X 4 X 176 Y 71 X 4 X 6 X 41 X 65 X 66 X 114 X 115 X 138 X 174 X 176 Y 72 X 5 X 6 X 7 X 42 X 43 X 66 X 67 X 114 X 116 X 138 X 140 X 174 X 175 Y 73 X 7 X 8 X 9 X 41 X 42 X 65 X 114 X 138 X 139 X 171 X 172 Y 74 X 7 X 8 X 170 X 172 Y 75 X 9 X 172 Y 78 X 131 Y 79 X 48 X 50 X 130 Y 80 X 16 X 49 X 50 X 130 X 131 X 132 Y 81 X 15 X 16 X 49 X 98 X 163 X 164 X 165 Y 82 X 15 X 17 X 97 X 165 Y 83 X 26 X 97 X 98 X 99 X 154 X 164 Y 84 X 25 X 27 X 153 X 155 Y 85 X 14 X 23 X 24 X 28 X 153 X 154 X 156 X 165 X 167 Y 86 X 9 X 14 X 15 X 16 X 17 X 23 X 24 X 28 X 38 X 39 X 50 X 51 X 129 X 130 X 141 X 142 X 153 X 154 X 156 X 157 X 164 X 167 X 172 Y 87 X 9 X 15 X 16 X 17 X 18 X 23 X 24 X 28 X 38 X 39 X 51 X 52 X 129 X 131 X 141 X 142 X 153 X 154 X 156 X 163 X 164 X 170 X 171 Y 88 X 4 X 5 X 15 X 18 X 25 X 27 X 50 X 129 X 153 X 155 X 161 X 162 X 166 X 175 X 176 Y 89 X 4 X 5 X 15 X 16 X 17 X 18 X 26 X 154 X 163 X 164 X 175 X 176 Y 90 X 14 X 15 X 16 X 17 X 164 X 167 Y 91 X 14 X 165 X 167 Y 93 X 43 X 63 X 64 X 116 X 117 Y 94 X 43 X 44 X 63 X 65 X 115 X 117 X 136 X 137 X 138 Y 95 X 42 X 44 X 65 X 115 X 136 Y 96 X 33 X 65 X 66 X 114 X 115 X 137 X 147 Y 97 X 32 X 34 X 146 X 148 Y 98 X 31 X 35 X 36 X 45 X 134 X 136 X 145 X 147 X 148 Y 99 X 20 X 21 X 31 X 35 X 36 X 42 X 43 X 44 X 45 X 50 X 129 X 134 X 137 X 144 X 145 X 147 X 148 X 159 X 160 Y 100 X 20 X 21 X 31 X 35 X 36 X 41 X 42 X 43 X 44 X 50 X 130 X 131 X 137 X 138 X 145 X 147 X 148 X 159 X 160 Y 101 X 32 X 34 X 41 X 44 X 54 X 55 X 125 X 126 X 135 X 139 X 140 X 146 X 148 Y 102 X 33 X 41 X 42 X 43 X 44 X 54 X 55 X 125 X 126 X 137 X 138 X 147 Y 103 X 42 X 43 X 44 X 45 X 134 X 137 Y 104 X 45 X 134 X 136 Y 141 X 38 Y 142 X 37 Y 143 X 37 X 38 X 39 P 415 . Z 003 G 001 [ CORNER using THIN GUNS ] ( "1" useless early glider ) C 015 x 100 y 045 Y 006 X 130 X 131 X 132 Y 007 X 132 Y 008 X 131 ( "2" another useless early glider ) C 015 x 100 y 045 Y 036 X 079 X 080 Y 037 X 078 X 079 Y 038 X 080 ( "3" useless early left Herschel glider ) C 015 x 100 y 045 Y 066 X 070 X 071 X 072 Y 067 X 072 Y 068 X 071 ( "4" useless early right Herschel glider ) C 015 x 100 y 045 Y 066 X 109 X 110 Y 067 X 108 X 109 Y 068 X 110 ( "5" useless row of in-flight gliders ) C 015 x 100 y 045 Y 075 X 010 X 011 Y 076 X 010 X 012 Y 077 X 010 ( "6" 2nd useless in-flight glider ) C 015 x 100 y 045 Y 076 X 047 Y 077 X 048 Y 078 X 046 X 047 X 048 ( "7" 3rd useless in-flight glider ) C 015 x 100 y 045 Y 076 X 134 Y 077 X 132 X 133 Y 078 X 133 X 134 ( "8" rightmost useless in-flight glider ) C 015 x 100 y 045 Y 075 X 169 Y 076 X 169 X 170 Y 077 X 168 X 170 ( "9" useless leftover glider ) C 015 x 100 y 045 Y 088 X 132 Y 089 X 131 X 132 Y 090 X 131 X 133 ( "10" another useless leftover glider ) C 015 x 100 y 045 Y 088 X 048 X 049 Y 089 X 047 X 049 Y 090 X 049 ( "11" premature left glider ) C 015 x 100 y 045 Y 096 X 040 X 041 X 042 Y 097 X 042 Y 098 X 041 ( "12" premature right glider ) C 015 x 100 y 045 Y 096 X 139 X 140 Y 097 X 138 X 139 Y 098 X 140 [ "a" top left bouncer gun ] C 001 x 100 y 045 Y 055 X 038 Y 056 X 037 X 038 X 039 X 040 Y 057 X 020 X 021 X 036 X 037 X 039 X 041 X 045 X 046 Y 058 X 012 X 020 X 023 X 035 X 036 X 037 X 039 X 042 X 045 X 046 Y 059 X 011 X 015 X 016 X 024 X 036 X 037 X 039 X 041 Y 060 X 011 X 017 X 024 X 037 X 038 X 039 X 040 Y 061 X 012 X 013 X 014 X 015 X 016 X 024 X 032 X 038 Y 062 X 020 X 023 X 033 Y 063 X 020 X 021 X 031 X 032 X 033 [ "b" left bouncing glider ] C 009 x 100 y 045 Y 068 X 029 X 031 Y 069 X 029 X 030 Y 070 X 030 [ "c" left eater west (was x 070 y 075) ] C 004 x 025 y 120 Y 069 X 003 X 004 Y 070 X 004 Y 071 X 004 X 006 Y 072 X 005 X 006 [ "d" bottom left bouncer gun (was x 085 y 180) ] C 9 x 040 y 135 Y 083 X 017 X 018 X 019 X 029 X 030 Y 084 X 017 X 027 X 030 Y 085 X 012 X 018 X 026 X 034 X 035 X 036 X 037 X 038 Y 086 X 010 X 011 X 012 X 013 X 026 X 033 X 039 Y 087 X 009 X 011 X 013 X 014 X 026 X 034 X 035 X 039 Y 088 X 004 X 005 X 008 X 011 X 013 X 014 X 015 X 027 X 030 X 038 Y 089 X 004 X 005 X 009 X 011 X 013 X 014 X 029 X 030 Y 090 X 010 X 011 X 012 X 013 Y 091 X 012 [ "e" left eater ] C 004 x 100 y 045 Y 93 X 63 X 64 Y 94 X 63 X 65 Y 95 X 65 Y 96 X 65 X 66 [ "f" left thinned gun ] C 9 x 100 y 45 Y 96 X 29 X 30 Y 97 X 29 X 32 Y 98 X 21 X 22 X 23 X 24 X 25 X 33 X 47 Y 99 X 20 X 26 X 33 X 46 X 47 X 48 X 49 Y 100 X 20 X 24 X 25 X 33 X 45 X 46 X 48 X 50 Y 101 X 21 X 29 X 32 X 44 X 45 X 46 X 48 X 51 X 54 X 55 Y 102 X 29 X 30 X 45 X 46 X 48 X 50 X 54 X 55 Y 103 X 46 X 47 X 48 X 49 Y 104 X 47 [ "m" top right bouncer gun ] C 1 x 100 y 45 Y 55 X 142 Y 56 X 141 X 143 Y 57 X 134 X 135 X 139 X 140 X 144 X 159 X 160 Y 58 X 134 X 135 X 139 X 140 X 144 X 158 X 160 Y 59 X 139 X 140 X 144 X 157 X 158 X 159 X 164 X 165 X 167 X 168 X 169 Y 60 X 141 X 143 X 156 X 157 X 158 X 163 X 166 X 167 X 168 X 169 Y 61 X 142 X 149 X 157 X 158 X 159 X 164 X 165 Y 62 X 147 X 148 X 158 X 160 Y 63 X 148 X 149 X 159 X 160 [ "n" right bouncing glider ] C 4 x 100 y 45 Y 67 X 150 Y 68 X 151 Y 69 X 149 X 150 X 151 [ "o" right eater east ] C 4 x 130 y 45 Y 69 X 176 X 177 Y 70 X 176 Y 71 X 174 X 176 Y 72 X 174 X 175 [ "p" bottom right bouncer gun ] C 12 x 100 y 75 Y 83 X 150 X 151 X 161 X 162 Y 84 X 150 X 152 X 162 X 163 Y 85 X 145 X 146 X 151 X 152 X 153 X 161 X 168 Y 86 X 141 X 142 X 143 X 144 X 147 X 152 X 153 X 154 X 167 X 169 Y 87 X 141 X 142 X 143 X 145 X 146 X 151 X 152 X 153 X 166 X 170 X 171 Y 88 X 150 X 152 X 166 X 170 X 171 X 175 X 176 Y 89 X 150 X 151 X 166 X 170 X 171 X 175 X 176 Y 90 X 167 X 169 Y 91 X 168 [ "q" right eater ] C 12 x 100 y 45 Y 93 X 116 X 117 Y 94 X 115 X 117 Y 95 X 115 Y 96 X 114 X 115 [ "r" right thinned gun ] C 12 x 100 y 45 Y 96 X 150 X 151 Y 97 X 149 X 151 Y 98 X 133 X 148 X 149 X 150 X 155 X 156 Y 99 X 132 X 134 X 147 X 148 X 149 X 154 X 157 X 158 X 159 X 160 Y 100 X 130 X 131 X 135 X 148 X 149 X 150 X 155 X 156 X 158 X 159 X 160 Y 101 X 125 X 126 X 130 X 131 X 135 X 149 X 151 Y 102 X 125 X 126 X 130 X 131 X 135 X 150 X 151 Y 103 X 132 X 134 Y 104 X 133 - [ "M" reflected bouncer gun ] C 1 x 138 y 135 Y 55 X 142 Y 56 X 141 X 143 Y 57 X 134 X 135 X 139 X 140 X 144 X 159 X 160 Y 58 X 134 X 135 X 139 X 140 X 144 X 158 X 160 Y 59 X 139 X 140 X 144 X 157 X 158 X 159 X 164 X 165 X 167 X 168 X 169 Y 60 X 141 X 143 X 156 X 157 X 158 X 163 X 166 X 167 X 168 X 169 Y 61 X 142 X 149 X 157 X 158 X 159 X 164 X 165 Y 62 X 147 X 148 X 158 X 160 Y 63 X 148 X 149 X 159 X 160 [ "N" reflected bouncing glider ] C 4 x 153 y 120 Y 67 X 150 Y 68 X 151 Y 69 X 149 X 150 X 151 [ "O" reflected eater ] C 4 x 168 y 135 Y 69 X 176 X 177 Y 70 X 176 Y 71 X 174 X 176 Y 72 X 174 X 175 ( "P" reflected bouncer gun ) C 012 x 138 y 105 Y 083 X 150 X 151 X 161 X 162 Y 084 X 150 X 152 X 162 X 163 Y 085 X 145 X 146 X 151 X 152 X 153 X 161 X 168 Y 086 X 141 X 142 X 143 X 144 X 147 X 152 X 153 X 154 X 167 X 169 Y 087 X 141 X 142 X 143 X 145 X 146 X 151 X 152 X 153 X 166 X 170 X 171 Y 088 X 150 X 152 X 166 X 170 X 171 X 175 X 176 Y 089 X 150 X 151 X 166 X 170 X 171 X 175 X 176 Y 090 X 167 X 169 Y 091 X 168 ( "Q" reflected eater ) C 012 x 138 y 135 Y 093 X 116 X 117 Y 094 X 115 X 117 Y 095 X 115 Y 096 X 114 X 115 ( "R" reflected thinned gun ) C 012 x 138 y 135 Y 096 X 150 X 151 Y 097 X 149 X 151 Y 098 X 133 X 148 X 149 X 150 X 155 X 156 Y 099 X 132 X 134 X 147 X 148 X 149 X 154 X 157 X 158 X 159 X 160 Y 100 X 130 X 131 X 135 X 148 X 149 X 150 X 155 X 156 X 158 X 159 X 160 Y 101 X 125 X 126 X 130 X 131 X 135 X 149 X 151 Y 102 X 125 X 126 X 130 X 131 X 135 X 150 X 151 Y 103 X 132 X 134 Y 104 X 133 - ( end reflection ) [ I need another glider to bounce the "thinner". 206, -22] x 246 y -22 C 009 Y 050 X 060 X 062 Y 051 X 061 X 062 Y 052 X 061 x 040 y 000 C 001 [ NEW EATER 1 of 3 ] Y 086 X 144 Y 087 X 144 X 145 X 146 Y 088 X 147 Y 089 X 146 X 147 x 040 y 000 C 004 [ NEW EATER 2 of 3 ] Y 083 X 159 X 160 Y 084 X 159 Y 085 X 157 X 159 Y 086 X 157 X 158 x 040 y 000 C 009 [ NEW EATER 3 of 3 ] Y 116 X 158 X 159 Y 117 X 157 X 159 Y 118 X 157 Y 119 X 156 X 157 [ Ready for next command after 1 last 'Enter'. ] . [ TWO ] Z 3 G 1694 Y 1 X 43 X 44 X 50 X 51 X 136 X 137 Y 2 X 43 X 44 X 50 X 51 X 136 X 137 Y 18 X 118 X 119 Y 19 X 119 X 120 Y 20 X 118 Y 47 X 91 Y 48 X 91 X 92 Y 49 X 92 X 93 Y 50 X 91 X 92 Y 55 X 35 X 144 X 146 Y 56 X 33 X 35 X 144 X 148 Y 57 X 23 X 24 X 31 X 32 X 45 X 46 X 134 X 135 X 148 X 156 Y 58 X 22 X 26 X 31 X 32 X 45 X 46 X 134 X 135 X 144 X 149 X 154 X 155 X 156 X 157 Y 59 X 11 X 12 X 21 X 27 X 31 X 32 X 148 X 153 X 155 X 157 X 158 X 168 X 169 Y 60 X 11 X 12 X 21 X 25 X 27 X 28 X 33 X 35 X 144 X 148 X 152 X 155 X 157 X 158 X 159 X 168 X 169 Y 61 X 21 X 27 X 35 X 144 X 146 X 153 X 155 X 157 X 158 Y 62 X 22 X 26 X 154 X 155 X 156 X 157 Y 63 X 23 X 24 X 156 Y 64 X 34 X 145 Y 65 X 35 X 36 X 145 X 147 Y 66 X 34 X 35 X 145 X 146 Y 69 X 3 X 4 X 176 X 177 Y 70 X 4 X 176 Y 71 X 4 X 6 X 138 X 174 X 176 Y 72 X 5 X 6 X 41 X 43 X 137 X 174 X 175 Y 73 X 42 X 43 X 137 X 138 X 139 Y 74 X 22 X 23 X 24 X 42 X 157 X 158 Y 75 X 24 X 156 X 157 Y 76 X 23 X 158 Y 78 X 58 X 59 Y 79 X 49 X 59 X 60 X 130 Y 80 X 15 X 16 X 50 X 51 X 58 X 130 X 132 X 164 X 165 Y 81 X 14 X 15 X 49 X 50 X 130 X 131 X 163 X 165 Y 82 X 16 X 165 Y 83 X 26 X 27 X 154 Y 84 X 24 X 28 X 153 X 154 X 155 X 156 Y 85 X 15 X 23 X 29 X 51 X 152 X 153 X 155 X 157 X 164 X 166 Y 86 X 15 X 17 X 22 X 23 X 25 X 29 X 38 X 39 X 51 X 52 X 128 X 129 X 130 X 141 X 142 X 151 X 152 X 153 X 155 X 158 X 162 X 166 Y 87 X 18 X 19 X 23 X 29 X 38 X 39 X 50 X 52 X 128 X 141 X 142 X 152 X 153 X 155 X 157 X 162 Y 88 X 4 X 5 X 18 X 19 X 24 X 28 X 129 X 153 X 154 X 155 X 156 X 161 X 166 X 175 X 176 Y 89 X 4 X 5 X 18 X 19 X 26 X 27 X 154 X 162 X 175 X 176 Y 90 X 15 X 17 X 162 X 166 Y 91 X 15 X 164 X 166 Y 93 X 43 X 44 X 63 X 64 X 116 X 117 X 136 X 137 Y 94 X 44 X 45 X 63 X 65 X 115 X 117 X 136 X 138 Y 95 X 43 X 65 X 115 X 136 Y 96 X 32 X 33 X 65 X 66 X 114 X 115 X 147 Y 97 X 31 X 35 X 145 X 146 X 147 X 148 Y 98 X 30 X 36 X 44 X 135 X 137 X 144 X 146 X 148 X 149 Y 99 X 20 X 21 X 30 X 34 X 36 X 37 X 42 X 44 X 135 X 139 X 143 X 146 X 148 X 149 X 150 X 159 X 160 Y 100 X 20 X 21 X 30 X 36 X 40 X 41 X 139 X 144 X 146 X 148 X 149 X 159 X 160 Y 101 X 31 X 35 X 40 X 41 X 54 X 55 X 125 X 126 X 135 X 140 X 145 X 146 X 147 X 148 Y 102 X 32 X 33 X 40 X 41 X 54 X 55 X 125 X 126 X 139 X 147 Y 103 X 42 X 44 X 135 X 139 Y 104 X 44 X 75 X 135 X 137 Y 105 X 74 Y 106 X 74 X 75 X 76 P 369 . Z 3 G 1714 [ THREE ] Y 1 X 136 X 137 Y 2 X 136 X 137 Y 13 X 123 X 124 Y 14 X 124 X 125 Y 15 X 123 Y 48 X 88 X 89 X 101 Y 49 X 88 X 89 X 99 X 100 X 101 Y 50 X 99 X 101 Y 51 X 99 Y 55 X 37 X 38 X 142 Y 56 X 36 X 40 X 140 X 141 X 142 X 143 Y 57 X 20 X 21 X 35 X 41 X 45 X 46 X 134 X 135 X 139 X 141 X 143 X 144 X 159 X 160 Y 58 X 20 X 21 X 35 X 39 X 41 X 42 X 45 X 46 X 134 X 135 X 138 X 141 X 143 X 144 X 145 X 157 X 160 X 168 Y 59 X 11 X 12 X 16 X 23 X 24 X 35 X 41 X 139 X 141 X 143 X 144 X 156 X 164 X 165 X 169 Y 60 X 11 X 13 X 17 X 23 X 24 X 25 X 36 X 40 X 140 X 141 X 142 X 143 X 156 X 163 X 169 Y 61 X 12 X 13 X 14 X 15 X 16 X 23 X 24 X 37 X 38 X 142 X 148 X 156 X 164 X 165 X 166 X 167 X 168 Y 62 X 13 X 14 X 15 X 20 X 21 X 31 X 33 X 147 X 157 X 160 Y 63 X 20 X 21 X 32 X 33 X 147 X 148 X 149 X 159 X 160 Y 64 X 32 Y 69 X 3 X 4 X 27 X 28 X 29 X 39 X 140 X 152 X 153 X 176 X 177 Y 70 X 4 X 29 X 40 X 41 X 140 X 142 X 151 X 152 X 176 Y 71 X 4 X 6 X 28 X 39 X 40 X 140 X 141 X 153 X 174 X 176 Y 72 X 5 X 6 X 174 X 175 Y 73 X 63 X 64 Y 74 X 64 X 65 Y 75 X 10 X 11 X 63 X 169 X 170 Y 76 X 9 X 10 X 133 X 168 X 170 Y 77 X 11 X 46 X 48 X 132 X 170 Y 78 X 47 X 48 X 132 X 133 X 134 Y 79 X 47 Y 82 X 18 Y 83 X 17 X 18 X 29 X 30 X 150 X 151 X 161 X 162 X 163 Y 84 X 17 X 19 X 29 X 30 X 35 X 36 X 37 X 150 X 153 X 163 Y 85 X 12 X 13 X 26 X 27 X 34 X 35 X 36 X 37 X 38 X 142 X 143 X 144 X 145 X 146 X 154 X 162 X 168 Y 86 X 10 X 14 X 25 X 26 X 27 X 33 X 37 X 39 X 141 X 147 X 154 X 167 X 168 X 169 X 170 Y 87 X 9 X 15 X 26 X 27 X 34 X 38 X 39 X 141 X 145 X 146 X 154 X 166 X 167 X 169 X 171 Y 88 X 4 X 5 X 8 X 9 X 11 X 15 X 29 X 30 X 48 X 49 X 131 X 132 X 142 X 150 X 153 X 165 X 166 X 167 X 169 X 172 X 175 X 176 Y 89 X 4 X 5 X 9 X 15 X 29 X 30 X 49 X 50 X 131 X 133 X 150 X 151 X 166 X 167 X 169 X 171 X 175 X 176 Y 90 X 10 X 14 X 48 X 131 X 167 X 168 X 169 X 170 Y 91 X 12 X 13 X 168 Y 93 X 63 X 64 X 116 X 117 Y 94 X 63 X 65 X 115 X 117 Y 95 X 41 X 65 X 115 Y 96 X 29 X 30 X 41 X 42 X 65 X 66 X 114 X 115 X 138 X 139 X 140 X 150 X 151 Y 97 X 22 X 23 X 24 X 29 X 30 X 40 X 42 X 138 X 148 X 151 Y 98 X 21 X 22 X 23 X 24 X 25 X 32 X 33 X 46 X 47 X 133 X 139 X 147 X 155 X 156 X 157 X 158 X 159 Y 99 X 20 X 22 X 26 X 32 X 33 X 34 X 45 X 49 X 131 X 132 X 133 X 134 X 147 X 154 X 160 Y 100 X 20 X 21 X 25 X 32 X 33 X 44 X 50 X 130 X 132 X 134 X 135 X 147 X 155 X 156 X 160 Y 101 X 29 X 30 X 44 X 48 X 50 X 51 X 54 X 55 X 125 X 126 X 129 X 132 X 134 X 135 X 136 X 148 X 151 X 159 Y 102 X 29 X 30 X 44 X 50 X 54 X 55 X 125 X 126 X 130 X 132 X 134 X 135 X 150 X 151 Y 103 X 45 X 49 X 131 X 132 X 133 X 134 Y 104 X 46 X 47 X 133 Y 109 X 70 Y 110 X 69 Y 111 X 69 X 70 X 71 P 432 . Z 3 G 1714 [ FOUR ] Y 1 X 136 X 137 Y 2 X 136 X 137 Y 13 X 123 X 124 Y 14 X 124 X 125 Y 15 X 123 Y 48 X 101 Y 49 X 99 X 100 X 101 Y 50 X 99 X 101 Y 51 X 99 Y 55 X 37 X 38 X 142 Y 56 X 36 X 40 X 140 X 141 X 142 X 143 Y 57 X 20 X 21 X 35 X 41 X 45 X 46 X 134 X 135 X 139 X 141 X 143 X 144 X 159 X 160 Y 58 X 20 X 21 X 35 X 39 X 41 X 42 X 45 X 46 X 134 X 135 X 138 X 141 X 143 X 144 X 145 X 157 X 160 X 168 Y 59 X 11 X 12 X 16 X 23 X 24 X 35 X 41 X 139 X 141 X 143 X 144 X 156 X 164 X 165 X 169 Y 60 X 11 X 13 X 17 X 23 X 24 X 25 X 36 X 40 X 140 X 141 X 142 X 143 X 156 X 163 X 169 Y 61 X 12 X 13 X 14 X 15 X 16 X 23 X 24 X 37 X 38 X 142 X 148 X 156 X 164 X 165 X 166 X 167 X 168 Y 62 X 13 X 14 X 15 X 20 X 21 X 31 X 33 X 147 X 157 X 160 Y 63 X 20 X 21 X 32 X 33 X 147 X 148 X 149 X 159 X 160 Y 64 X 32 Y 69 X 3 X 4 X 27 X 28 X 29 X 39 X 140 X 152 X 153 X 176 X 177 Y 70 X 4 X 29 X 40 X 41 X 140 X 142 X 151 X 152 X 176 Y 71 X 4 X 6 X 28 X 39 X 40 X 140 X 141 X 153 X 174 X 176 Y 72 X 5 X 6 X 174 X 175 Y 73 X 63 X 64 Y 74 X 64 X 65 Y 75 X 10 X 11 X 63 X 169 X 170 Y 76 X 9 X 10 X 133 X 168 X 170 Y 77 X 11 X 46 X 48 X 132 X 170 Y 78 X 47 X 48 X 132 X 133 X 134 Y 79 X 47 Y 82 X 18 Y 83 X 17 X 18 X 29 X 30 X 150 X 151 X 161 X 162 X 163 Y 84 X 17 X 19 X 29 X 30 X 35 X 36 X 37 X 150 X 153 X 163 Y 85 X 12 X 13 X 26 X 27 X 34 X 35 X 36 X 37 X 38 X 142 X 143 X 144 X 145 X 146 X 154 X 162 X 168 Y 86 X 10 X 14 X 25 X 26 X 27 X 33 X 37 X 39 X 141 X 147 X 154 X 167 X 168 X 169 X 170 Y 87 X 9 X 15 X 26 X 27 X 34 X 38 X 39 X 141 X 145 X 146 X 154 X 166 X 167 X 169 X 171 Y 88 X 4 X 5 X 8 X 9 X 11 X 15 X 29 X 30 X 48 X 49 X 131 X 132 X 142 X 150 X 153 X 165 X 166 X 167 X 169 X 172 X 175 X 176 Y 89 X 4 X 5 X 9 X 15 X 29 X 30 X 49 X 50 X 131 X 133 X 150 X 151 X 166 X 167 X 169 X 171 X 175 X 176 Y 90 X 10 X 14 X 48 X 131 X 167 X 168 X 169 X 170 Y 91 X 12 X 13 X 168 Y 93 X 63 X 64 X 116 X 117 Y 94 X 63 X 65 X 115 X 117 Y 95 X 41 X 65 X 115 Y 96 X 29 X 30 X 41 X 42 X 65 X 66 X 114 X 115 X 138 X 139 X 140 X 150 X 151 Y 97 X 22 X 23 X 24 X 29 X 30 X 40 X 42 X 138 X 148 X 151 Y 98 X 21 X 22 X 23 X 24 X 25 X 32 X 33 X 46 X 47 X 133 X 139 X 147 X 155 X 156 X 157 X 158 X 159 Y 99 X 20 X 22 X 26 X 32 X 33 X 34 X 45 X 49 X 131 X 132 X 133 X 134 X 147 X 154 X 160 Y 100 X 20 X 21 X 25 X 32 X 33 X 44 X 50 X 130 X 132 X 134 X 135 X 147 X 155 X 156 X 160 Y 101 X 29 X 30 X 44 X 48 X 50 X 51 X 54 X 55 X 125 X 126 X 129 X 132 X 134 X 135 X 136 X 148 X 151 X 159 Y 102 X 29 X 30 X 44 X 50 X 54 X 55 X 125 X 126 X 130 X 132 X 134 X 135 X 150 X 151 Y 103 X 45 X 49 X 131 X 132 X 133 X 134 Y 104 X 46 X 47 X 133 Y 109 X 70 Y 110 X 69 Y 111 X 69 X 70 X 71 P 428 . Z 3 G 1735 [ FIVE ] Y 1 X 136 X 137 Y 2 X 136 X 137 Y 8 X 128 X 129 X 130 Y 9 X 130 Y 10 X 129 Y 50 X 99 X 100 X 101 Y 51 X 99 X 104 Y 52 X 100 X 104 X 105 Y 53 X 105 X 106 Y 54 X 102 X 105 Y 55 X 34 X 35 X 103 X 104 X 145 X 146 Y 56 X 34 X 35 X 36 X 145 X 146 Y 57 X 20 X 36 X 37 X 39 X 45 X 46 X 134 X 135 X 142 X 143 X 154 X 159 Y 58 X 18 X 20 X 25 X 26 X 27 X 36 X 39 X 45 X 46 X 134 X 135 X 141 X 142 X 143 X 154 X 159 X 161 Y 59 X 11 X 12 X 17 X 19 X 36 X 37 X 39 X 142 X 143 X 154 X 162 X 163 X 168 X 169 Y 60 X 11 X 12 X 16 X 19 X 27 X 30 X 31 X 34 X 35 X 36 X 145 X 146 X 149 X 150 X 162 X 163 X 168 X 169 Y 61 X 17 X 19 X 27 X 31 X 34 X 35 X 145 X 146 X 149 X 152 X 153 X 162 X 163 Y 62 X 18 X 20 X 27 X 30 X 150 X 151 X 152 X 153 X 159 X 161 Y 63 X 20 X 29 X 30 X 151 X 159 Y 65 X 148 Y 66 X 31 X 33 X 149 Y 67 X 31 X 32 X 147 X 148 X 149 Y 68 X 32 X 68 X 69 X 70 Y 69 X 3 X 4 X 70 X 176 X 177 Y 70 X 4 X 69 X 176 Y 71 X 4 X 6 X 174 X 176 Y 72 X 5 X 6 X 174 X 175 Y 74 X 45 X 136 Y 75 X 46 X 134 X 135 Y 76 X 44 X 45 X 46 X 135 X 136 Y 77 X 12 X 13 X 167 Y 78 X 12 X 14 X 167 X 168 Y 79 X 12 X 166 X 168 Y 80 X 50 X 51 X 129 Y 81 X 54 X 127 X 128 X 129 X 130 Y 82 X 49 X 126 X 127 X 128 X 129 X 131 Y 83 X 20 X 21 X 30 X 49 X 50 X 51 X 54 X 126 X 127 X 130 X 131 X 151 X 159 Y 84 X 20 X 23 X 30 X 32 X 149 X 151 X 157 X 158 X 159 X 160 Y 85 X 15 X 16 X 19 X 23 X 31 X 33 X 147 X 148 X 157 X 158 X 161 X 164 X 165 Y 86 X 14 X 15 X 16 X 19 X 20 X 23 X 31 X 34 X 38 X 39 X 141 X 142 X 147 X 148 X 160 X 161 X 164 X 165 Y 87 X 11 X 13 X 14 X 31 X 33 X 38 X 39 X 141 X 142 X 147 X 148 X 156 X 167 X 168 Y 88 X 4 X 5 X 11 X 14 X 23 X 24 X 25 X 30 X 32 X 149 X 151 X 156 X 167 X 168 X 169 X 175 X 176 Y 89 X 4 X 5 X 11 X 13 X 14 X 30 X 151 X 156 X 167 X 168 X 175 X 176 Y 90 X 14 X 15 X 16 X 46 X 47 X 134 X 164 X 165 Y 91 X 15 X 16 X 45 X 47 X 133 X 134 X 164 X 165 Y 92 X 47 X 133 X 135 Y 93 X 63 X 64 X 116 X 117 Y 94 X 63 X 65 X 115 X 117 Y 95 X 65 X 115 Y 96 X 29 X 38 X 39 X 65 X 66 X 114 X 115 X 142 X 150 Y 97 X 27 X 29 X 36 X 39 X 141 X 142 X 143 X 144 X 150 X 152 Y 98 X 26 X 28 X 36 X 40 X 43 X 44 X 136 X 137 X 140 X 143 X 144 X 153 X 154 Y 99 X 20 X 21 X 25 X 28 X 36 X 39 X 40 X 43 X 44 X 45 X 136 X 137 X 140 X 141 X 153 X 154 X 159 X 160 Y 100 X 20 X 21 X 26 X 28 X 45 X 46 X 48 X 133 X 134 X 145 X 153 X 154 X 159 X 160 Y 101 X 27 X 29 X 34 X 35 X 36 X 45 X 48 X 54 X 55 X 125 X 126 X 132 X 133 X 134 X 145 X 150 X 152 Y 102 X 29 X 45 X 46 X 48 X 54 X 55 X 125 X 126 X 133 X 134 X 145 X 150 Y 103 X 43 X 44 X 45 X 136 X 137 Y 104 X 43 X 44 X 136 X 137 Y 115 X 64 X 66 Y 116 X 64 X 65 Y 117 X 65 P 417 . Z 3 G 1797 [ SIX ] Y 34 X 84 X 85 Y 35 X 84 X 86 Y 36 X 84 Y 38 X 105 X 106 Y 39 X 104 Y 40 X 110 X 111 X 113 Y 41 X 113 Y 42 X 104 X 107 X 109 X 110 X 111 X 112 X 113 Y 43 X 105 X 106 X 107 X 110 X 111 Y 44 X 107 X 109 Y 45 X 109 X 110 X 112 Y 46 X 111 X 113 Y 47 X 107 X 108 X 111 X 114 Y 48 X 111 X 114 Y 49 X 110 X 113 Y 50 X 109 X 110 Y 51 X 110 X 113 Y 52 X 84 X 85 X 111 X 112 X 114 X 117 Y 53 X 83 X 85 X 112 X 114 X 116 X 117 Y 54 X 85 X 112 X 116 X 117 Y 55 X 35 X 116 X 144 X 146 Y 56 X 35 X 36 X 37 X 38 X 101 X 102 X 116 X 117 X 143 X 146 Y 57 X 19 X 36 X 37 X 38 X 39 X 45 X 46 X 101 X 102 X 113 X 114 X 118 X 134 X 135 X 142 X 143 X 154 X 161 Y 58 X 18 X 20 X 26 X 27 X 36 X 39 X 45 X 46 X 115 X 116 X 117 X 134 X 135 X 140 X 141 X 145 X 154 X 160 X 162 Y 59 X 11 X 12 X 16 X 17 X 21 X 36 X 37 X 38 X 39 X 116 X 142 X 143 X 153 X 160 X 161 X 163 X 168 X 169 Y 60 X 11 X 12 X 16 X 17 X 21 X 26 X 28 X 30 X 31 X 35 X 36 X 37 X 38 X 143 X 146 X 149 X 150 X 160 X 161 X 163 X 164 X 168 X 169 Y 61 X 16 X 17 X 21 X 27 X 28 X 32 X 35 X 114 X 115 X 144 X 146 X 149 X 152 X 153 X 154 X 160 X 161 X 163 Y 62 X 18 X 20 X 31 X 113 X 115 X 149 X 150 X 151 X 152 X 160 X 162 Y 63 X 19 X 28 X 31 X 110 X 111 X 113 X 115 X 116 X 150 X 151 X 161 Y 64 X 110 X 113 X 115 X 116 Y 65 X 111 X 113 X 115 X 116 Y 66 X 112 X 113 Y 67 X 38 X 143 Y 68 X 39 X 141 X 142 Y 69 X 3 X 4 X 37 X 38 X 39 X 142 X 143 X 176 X 177 Y 70 X 4 X 110 X 176 Y 71 X 4 X 6 X 108 X 109 X 174 X 176 Y 72 X 5 X 6 X 109 X 110 X 174 X 175 Y 75 X 46 X 134 X 136 Y 76 X 44 X 46 X 134 X 135 Y 77 X 45 X 46 X 135 Y 78 X 18 X 19 X 161 X 162 Y 79 X 19 X 20 X 161 X 163 Y 80 X 18 X 161 Y 82 X 54 X 55 X 126 Y 83 X 19 X 22 X 31 X 53 X 55 X 125 X 126 X 149 X 159 X 160 Y 84 X 19 X 30 X 32 X 55 X 125 X 127 X 148 X 150 X 158 X 159 X 160 X 161 Y 85 X 15 X 18 X 22 X 23 X 29 X 33 X 34 X 147 X 149 X 150 X 156 X 157 X 158 X 161 X 164 X 166 Y 86 X 12 X 13 X 14 X 15 X 19 X 20 X 22 X 24 X 29 X 33 X 34 X 38 X 39 X 141 X 142 X 146 X 147 X 149 X 150 X 160 X 161 X 164 X 167 Y 87 X 11 X 12 X 13 X 14 X 29 X 33 X 34 X 38 X 39 X 141 X 142 X 147 X 149 X 150 X 157 X 167 X 168 Y 88 X 4 X 5 X 11 X 14 X 23 X 24 X 30 X 32 X 148 X 150 X 156 X 165 X 169 X 170 X 175 X 176 Y 89 X 4 X 5 X 11 X 12 X 13 X 14 X 31 X 149 X 156 X 167 X 168 X 175 X 176 Y 90 X 12 X 13 X 14 X 15 X 46 X 47 X 48 X 133 X 134 X 164 X 167 Y 91 X 15 X 48 X 132 X 133 X 164 X 166 Y 92 X 47 X 134 Y 93 X 63 X 64 X 116 X 117 Y 94 X 63 X 65 X 115 X 117 Y 95 X 65 X 115 Y 96 X 28 X 37 X 40 X 65 X 66 X 114 X 115 X 141 X 142 X 152 Y 97 X 27 X 29 X 40 X 140 X 141 X 142 X 143 X 151 X 153 Y 98 X 25 X 26 X 30 X 36 X 37 X 41 X 44 X 135 X 137 X 140 X 143 X 144 X 145 X 151 X 152 X 154 Y 99 X 20 X 21 X 25 X 26 X 30 X 35 X 37 X 39 X 40 X 44 X 45 X 46 X 47 X 134 X 137 X 140 X 141 X 151 X 152 X 154 X 155 X 159 X 160 Y 100 X 20 X 21 X 25 X 26 X 30 X 45 X 46 X 47 X 48 X 133 X 134 X 144 X 151 X 152 X 154 X 159 X 160 Y 101 X 27 X 29 X 35 X 36 X 45 X 48 X 54 X 55 X 125 X 126 X 131 X 132 X 136 X 145 X 151 X 153 Y 102 X 28 X 45 X 46 X 47 X 48 X 54 X 55 X 125 X 126 X 133 X 134 X 145 X 152 Y 103 X 44 X 45 X 46 X 47 X 134 X 137 Y 104 X 44 X 135 X 137 Y 130 X 50 Y 131 X 48 X 49 Y 132 X 49 X 50 P 507 . Z 3 G 1842 [ SEVEN (Last) ] Y 23 X 73 X 74 Y 24 X 72 X 73 Y 25 X 74 Y 41 X 95 X 96 Y 42 X 96 X 97 Y 43 X 95 Y 50 X 119 X 120 Y 51 X 119 X 121 Y 52 X 120 X 121 Y 55 X 36 X 143 X 145 Y 56 X 33 X 34 X 35 X 36 X 101 X 102 X 143 X 146 Y 57 X 24 X 32 X 33 X 34 X 35 X 45 X 46 X 101 X 102 X 134 X 135 X 146 X 147 X 156 Y 58 X 23 X 25 X 32 X 35 X 45 X 46 X 134 X 135 X 144 X 148 X 149 X 155 X 157 Y 59 X 11 X 12 X 22 X 26 X 27 X 32 X 33 X 34 X 35 X 41 X 139 X 140 X 146 X 147 X 154 X 156 X 157 X 168 X 169 Y 60 X 11 X 12 X 22 X 26 X 27 X 33 X 34 X 35 X 36 X 41 X 109 X 110 X 138 X 143 X 146 X 153 X 154 X 156 X 157 X 168 X 169 Y 61 X 22 X 26 X 27 X 36 X 109 X 110 X 143 X 145 X 154 X 156 X 157 Y 62 X 23 X 25 X 155 X 157 Y 63 X 24 X 146 X 156 Y 64 X 33 X 35 X 145 Y 65 X 34 X 35 X 145 X 146 X 147 Y 66 X 34 Y 67 X 29 X 30 X 31 X 150 X 151 Y 68 X 31 X 149 X 150 Y 69 X 3 X 4 X 30 X 151 X 176 X 177 Y 70 X 4 X 176 Y 71 X 4 X 6 X 41 X 65 X 66 X 114 X 115 X 138 X 174 X 176 Y 72 X 5 X 6 X 7 X 42 X 43 X 66 X 67 X 114 X 116 X 138 X 140 X 174 X 175 Y 73 X 7 X 8 X 9 X 41 X 42 X 65 X 114 X 138 X 139 X 171 X 172 Y 74 X 7 X 8 X 170 X 172 Y 75 X 9 X 172 Y 78 X 131 Y 79 X 48 X 50 X 130 Y 80 X 16 X 49 X 50 X 130 X 131 X 132 Y 81 X 15 X 16 X 49 X 98 X 163 X 164 X 165 Y 82 X 15 X 17 X 97 X 165 Y 83 X 26 X 97 X 98 X 99 X 154 X 164 Y 84 X 25 X 27 X 153 X 155 Y 85 X 14 X 23 X 24 X 28 X 153 X 154 X 156 X 165 X 167 Y 86 X 9 X 14 X 15 X 16 X 17 X 23 X 24 X 28 X 38 X 39 X 50 X 51 X 129 X 130 X 141 X 142 X 153 X 154 X 156 X 157 X 164 X 167 X 172 Y 87 X 9 X 15 X 16 X 17 X 18 X 23 X 24 X 28 X 38 X 39 X 51 X 52 X 129 X 131 X 141 X 142 X 153 X 154 X 156 X 163 X 164 X 170 X 171 Y 88 X 4 X 5 X 15 X 18 X 25 X 27 X 50 X 129 X 153 X 155 X 161 X 162 X 166 X 175 X 176 Y 89 X 4 X 5 X 15 X 16 X 17 X 18 X 26 X 154 X 163 X 164 X 175 X 176 Y 90 X 14 X 15 X 16 X 17 X 164 X 167 Y 91 X 14 X 165 X 167 Y 93 X 43 X 63 X 64 X 116 X 117 Y 94 X 43 X 44 X 63 X 65 X 115 X 117 X 136 X 137 X 138 Y 95 X 42 X 44 X 65 X 115 X 136 Y 96 X 33 X 65 X 66 X 114 X 115 X 137 X 147 Y 97 X 32 X 34 X 146 X 148 Y 98 X 31 X 35 X 36 X 45 X 134 X 136 X 145 X 147 X 148 Y 99 X 20 X 21 X 31 X 35 X 36 X 42 X 43 X 44 X 45 X 50 X 129 X 134 X 137 X 144 X 145 X 147 X 148 X 159 X 160 Y 100 X 20 X 21 X 31 X 35 X 36 X 41 X 42 X 43 X 44 X 50 X 130 X 131 X 137 X 138 X 145 X 147 X 148 X 159 X 160 Y 101 X 32 X 34 X 41 X 44 X 54 X 55 X 125 X 126 X 135 X 139 X 140 X 146 X 148 Y 102 X 33 X 41 X 42 X 43 X 44 X 54 X 55 X 125 X 126 X 137 X 138 X 147 Y 103 X 42 X 43 X 44 X 45 X 134 X 137 Y 104 X 45 X 134 X 136 Y 141 X 38 Y 142 X 37 Y 143 X 37 X 38 X 39 P 415 .
I've done what "cannot be done"; I hope you can enjoy it!
OOPS! This Picture Makes It Look Like a Glider CAN Go around a Corner!
[edit source]There are some beautiful animated pictures in Commons. Let me see if I can use one here.
[[1]] Racetrack from Conway's Game of Life
I need to post this with my contributions to the "Conway's Game of Life" talk page. It's a complex race track which exhibits several wonderful mechanisms of "Machine Theory". I have sucessfully reverse engineered this picture; I am working on a data file which works with my QB64 BASIC implementation of a working program. Never before have I seen: (1) a contained shuttle (magenta), which sends gliders (yellow) around a corner, (2) a linear "not" gate (green) -- no right angle turn here! (3) such a very compact "thin gun" (green), (4) space ship eaters (blue), (5) glider (yellow) and space ship (red) collision, which sends out a glider (yellow) (6) glider streams which convert a third incoming glider (yellow) into a space ship (red) at a right angle, William Poundstone, in _The_Recursive_Universe_, documents: (7) a space ship factory (grreen) pages 108 - 110 , (8) a pentadecathlon (magenta) reflecting a glider (yellow) pages 44, 45, (9) The kick-back collision of two gliders (yellow) pages 198 - 200 and others, (10) the glider gun (green) pages 105 - 108, (11) the eater (blue) pages 38 -40, etc. The color coding in the animation is very helpful -- but this is an animation, not a working program. My key to the picture: This is "RacetrackChart.txt", which was created MON 2012 APR 30 10:09 PM, revised TUE 2012 MAY 01 02:56 PM. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 | | 2 Coordinates on (18,2) Corner 2 | this diagram are "D" MAGENTA (26,3) Pentadecathlon | 3 only approximate. / \ "D" MAGENTA 3 | See the data / \ / | 4 file for (7,4) Glider Gun / \ / 4 | exact "A" GREEN / \ / | 5 details. (10,5) (13,5) Linear NOT Gate \ / 5 | vanish "C" GREEN \ / "Spaceship Factory" | 6 reaction / (28,6) Glider Gun 6 | / \ / (22,7) Glider "E" GREEN | 7 / \ / bounces 7 | / \ / Glider Glider | 8 / (13,8) Corner "<=<= Spaceship Path <=<=" 26,8) Gun (30,8) Gun 8 | / "B" MAGENTA / "F" GREEN "G" GREEN | 9 / (11,9) Crab / (26,9) Crab 9 | / "I" BLUE / "H" BLUE | 10 / / 10 | / "Compact Thin Gun" / | 11 / (13,11) Glider Gun / 11 | / "N" GREEN / | 12 (3,12) Corner (10,12) Glider Gun / 12 | "U" MAGENTA "M" GREEN \ / | 13 \ Eater (13,14) \ / 13 | \ "L" BLUE \ / | 14 \ (8,14) Eater \ Spaceship 14 | \ "R" BLUE \ forms | 15 Glider\ /"<=<= Spaceship Path <=<=" \ 15 | forms / \ (15,15) Eater | 16 (2,16) Glider Gun \ (11,16) Eater \"O" BLUE 16 | "Q" GREEN \ "T" BLUE \ | 17 \ / (14,17) Glider Gun 17 | "Compact Thin Gun" Kickback "K" GREEN | 18 (2,18) Glider Gun Reaction 18 | "P" GREEN / | 19 (7,19) Glider Gun 19 | "S" GREEN | 20 20 | EXPLANATION A signal propagates around this tortuous racetrack. Sometimes it is embodied as a Glider. Sometimes, it is embodied as a Spaceship. Sometimes, it is a gap in a regular stream of Gliders. The rows of blue or navy Blocks are merely decorative. They never interact with anything else during this simulation. 1. Glider Gun "A" fires a Glider stream into Corner "B". Notice that there is a gap in the Glider stream at start-up time, between Corner "B" and the "Linear NOT Gate", "C". This gap is the racing signal. After the racing signal traverses the entire racetrack, it removes one glider from the stream, leaving a gap to carry the signal. 2. Corner "B" deflects The Glider stream into the "Linear NOT Gate", "C", which is really just a normal Glider Gun, except incoming Gliders which approach just right temporarily inhibit the formation of new Gliders. 3. The "Linear NOT Gate", "C", converts the incoming gap into an outgoing Glider. 4. The Glider "bounces" off of Corner "D", and eventually encounters a stream of Spaceships. 5. A stream of Spaceships is created by the "Spaceship Factory", which is composed of Glider Guns "E", "F", and "G". I initialized the "Spaceship Factory" by including a temporary Block, which removes a premature Glider, before it destroys one of the Glider Guns. 6. The rightmost "Crab", "H", removes every other Spaceship from the stream. (I call it a "crab", because I think it looks somewhat like a crab. You can call it a "Grab", because that's what it does, or you can call it a "Spaceship Eater", because that's what it is.) This leaves a gap in the Spaceship stream, through which the Glider returning from the Pentadecathlon "E" can safely pass. 6. One Spaceship and the incoming Glider collide and are destroyed, but a new Glider, heading toward Pentadecathlon "E", is formed from the debris of the collision. 7. When the incoming Glider collides with the Pentadecathlon, "E", it is destroyed, but a new outgoing Glider, heading in the opposite direction, is formed from the collision debris. The Pentadecaqthlon "E" continues its oscillation unharmed. 8. All of the surviving Spaceships in the stream are destroyed by Crab "I". Notice the similarities between the streams of Gliders (two streams are parallel, but moving in opposite directions) produced by the "Spaceship Factory", Guns "E", "F", and "G", and the streams of produced by Gun "K" and Compact Thin Glider Guns "M" and "N". These Glider streams (parallel, but moving in opposite directions) interact with the incoming racing Glider to form a nes Spaceship. 9. Glider Gun "K" fires a stream of Gliders into Eater "L". 10. Two Glider Guns, "M" and "N", comprise a "Compact Thin Gun". If you number the Gliders in the streams from "M" and "N" properly, you can see that "odd" numbered Gliders collide to form a temporary Eater. The next even numbered Glider from Gun "N" destroys itself and the temporary Eater, which allows the even numbered Glider from Gun "M" to escape in the thinned Glider stream. A temporary Eater precursor and three Gliders are required to start the "Compact Thin Gun" so that it emits a Glider stream with the correct phase. An incoming glider (the racing signal) then may interact with a Glider from the "Compact Thin Gun" stream and the Glider stream passing between Gun "K" and Eater "L", to form a new Spaceship. 11. Gliders not consumed by the formation of a nes Spaceship are destroyed by Eater "O", which regenerates itself. 12. Glider Guns "P" and "Q" comprise a slightly different form of "Compact Thin Gun". Temporary Blocks are formed by collisions of Gliders from each Glider stream. Then a Glider from Gun "Q" removes the Block, just in time to allow a Glider from Gun "P" to pass through. Gaps in the resulting "thinned" stream are required, to allow the racing signal to pass through, after it is reflected by the "kickback reaction" with a Glider from Gun "S". 13. Eater "R" removes excess Gliders from the "Compact Thin Gun", "P" and "Q". 14. Glider Gun "S" fires a stream of Gliders into Eater "T". When the racing signal Glider encounters this stream, two Gliders are destroyed, but a new Glider, heading for Corner "U" is formed from the collision debris. 15. The new racing signal Glider passes through a gap in the thinned stream, and "bounces" off Corner "U". 16. The "bounced" racing signal Glider meeets the Glider stream from Gun "A" in the vanish reaction, leaving a gap in the stream to carry the signal. The cycle repeats indefinitely (forever). This entire configuration is a very long period oscillator. Your grandparents may remember Rube Goldberg's cartoon contraptions. You have John Horton Conway's "Life" game, and can create your own, even more fantastic "Rube Goldberg" machines.
Here is a link to the Wikipedia article on "Rube Goldberg".
[[2]] Rube Goldberg
Ray Calvin Baker (talk) 22:59, 1 May 2012 (UTC)
The end of of the "RacetrackChart.txt" file. The colors I used in my LIFE04.exe program were not designed or intended for such a display as this animation presents.
Ray Calvin Baker (talk) 02:03, 27 April 2012 (UTC)
Ray Calvin Baker (talk) 02:50, 27 April 2012 (UTC)
A Cellular space is NOT really a Universal Turing Machine.
[edit source]Both theoretical devices have the same computational power -- to compute anything which is "computable". Both are "theoretical" devices, because both require potentially infinite storage capacity (impossible to achieve in actual, practical devices. But I enjoy having 4 gigabytes in my pocket, on my flash drive.) I think the real reason for serious interest in Conway's LIFE game is that it has the potentiol for Universal Construction, as well as the capability of Universal computation. If you follow the activity of the puffer train (data set below) long enough to see the pattern, you will agree that the puffer train would eventually use up any finite amount of space.