Talk:Conway's Game of Life

From Wikiversity
Jump to navigation Jump to search

A video[edit]

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)

Run a Puffer Train on a Laptop[edit]

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]

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]

,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]

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]

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.

Ray Calvin Baker (talk) 23:10, 1 May 2012 (UTC)