It was created by dean hickerson, and is named for its stringy objects with complex behavior.
For instance:
Code: Select all
x = 9, y = 5, rule = Snakes
6.K2A$8.A$8.A$AB5.AB$.3AB3A!
Code: Select all
x = 3, y = 2, rule = Snakes
HD$.AK!
It can have spaceships too. This one is a “tandem” consisting of two snakes. (2c/6):
Code: Select all
x = 6, y = 3, rule = Snakes
BFDAIK2$AECBJK!
Code: Select all
x = 1, y = 11, rule = Snakes
F$D$B$J$K2$K$I$A$C$E!
The incredibly long ruletable:
Code: Select all
@RULE Snakes
@TABLE
n_states:18
neighborhood:Moore
symmetries:rotate4
# Snakes rule
# by Dean Hickerson, 10/22/2011 - 3/20/2012
############################# States #############################
var B0 = 1 # Background bit
var B1 = 2
var T0 = 3 # Signal tail / tentative turn direction
var T1 = 4
var SH0 = 5 # Shrink signal head
var SH1 = 6
var RH0 = 7 # Reverse signal head
var RH1 = 8
var C0 = 9 # Check that growth occurred
var C1 = 10
var N = 11 # New cell
var L = 12 # Left
var R = 13 # Right
var F = 14 # Forward
var A = 15 # Available for growth
var V = 16 # Venom
var Z = 17 # Dead cell that was once alive (used in Snakes-history rule)
########################### Variables ###########################
var dead = 0 # Use 0 for snakes in empty space, Z to show history.
# This is the only difference between the Snakes and
# Snakes-history rules.
# Note: Most variable names end with 'a' through 'h', indicating
# the position in the neighborhood where the variable is used. No
# suffix usually means it's used for the center cell.
# Any cell
var aa = {0,B0,B1,T0,T1,SH0,SH1,RH0,RH1,N,C0,C1,A,V,L,R,F,Z}
var ab = aa
var ac = aa
var ad = aa
var ae = aa
var af = aa
var ag = aa
var ah = aa
# Exterior cell
var ea = {0,Z,A,V}
var eb = ea
var ec = ea
var ed = ea
var ee = ea
var ef = ea
var eg = ea
var eh = ea
# Dead cell
var z = {0,Z}
var za = z
var zb = z
var zc = z
var zd = z
var ze = z
var zf = z
var zg = z
var zh = z
# Unavailable cell
var ua = {0,Z,V}
var uc = ua
var ug = ua
var B = {B0,B1}
var C = {C0,C1}
var LRF = {L,R,F}
var BT0 = {B0,T0}
var BT1 = {B1,T1}
var Ta = {T0,T1}
var Tc = Ta
var Te = Ta
var Tg = Ta
var RHa = {RH0,RH1}
var H0 = {RH0,SH0}
var H1 = {RH1,SH1}
var H = {RH0,RH1,SH0,SH1}
var Ha = H
# Bits 0 and 1 used for XORing
var bit0a = {B0,T0,SH0,RH0,C0}
var bit0c = bit0a
var bit0e = bit0a
var bit0g = bit0a
var bit1a = {B1,T1,SH1,RH1,C1}
var bit1c = bit1a
var bit1e = bit1a
var bit1g = bit1a
var bita = {bit0a,bit1a}
var bitc = bita
var bitd = bita
var bite = bita
var bitf = bita
var bit0notRHe = {B0,T0,SH0,C0}
var bit1notRHe = {B1,T1,SH1,C1}
var zORbit0d = {za,bit0a}
var zORbit0f = zORbit0d
var zORbit1d = {za,bit1a}
var zORbit1f = zORbit1d
# Variables used only for cleaning up random starting patterns
# These can't be neighbors of SH0, SH1, RH0, or RH1 cells
var notHneighbora = {0,N,C0,C1,A,V,L,R,F,Z}
var notHneighborc = notHneighbora
var notHneighbore = notHneighbora
var notHneighborg = notHneighbora
# These can't be neighbors of N cells
var notNneighbora = {0,T0,T1,SH0,SH1,RH0,RH1,N,A,V,L,R,F,Z}
var notNneighborc = notNneighbora
var notNneighbore = notNneighbora
var notNneighborg = notNneighbora
var NRHc = {N,RH0,RH1}
var NRHe = NRHc
var NRHg = NRHc
# Cells that can only occur at end of snake
var NLRF = {N,L,R,F}
var NLRFa = NLRF
var NLRFC = {N,L,R,F,C}
var notz = {B0,B1,RH0,RH1,SH0,SH1,T0,T1,N,A,V,L,R,F,C0,C1}
# These occur only within the snake, excluding any A's or V's in front of it
var i = {B0,B1,T0,T1,SH0,SH1,RH0,RH1,C0,C1,N,L,R,F}
var ia = i
var ib = i
var ic = i
var ie = i
var ig = i
var ih = i
# These can be neighbors of B cells in walls and labels
var Bea = {B,ea}
var Beb = Bea
var Bec = Bea
var Bed = Bea
var Bee = Bea
var Bef = Bea
var Beg = Bea
var Beh = Bea
##################### Rules ####################
# Rules are given in this order:
##### Bit transitions for B touching 2 B's (Must be before stability rules)
##### Stability of B cells for walls and labels
##### Death of cells that can't be part of a snake (for random starts)
##### Growth at front of snake
##### Signals reach end of snake
##### XOR rules for bits touching 2 other bits
##### Rules for cells that become bits, but only touch 1 other bit
##### Z cells die
##################################################
##### #####
##### Bit transitions for B touching 2 B's #####
##### #####
##################################################
# XOR rule for B cells which touch 2 others. This needs to be here instead
# of with the other XOR rules to have priority over the rules that allow
# B cells to be used as walls and labels.
# Background or signal tail becomes background
# Straight
B0,B0,ab,ec,ad,B0,af,eg,ah,B0
B0,B0,ab,ec,ad,B1,af,eg,ah,B1
B0,B1,ab,ec,ad,B0,af,eg,ah,B1
B0,B1,ab,ec,ad,B1,af,eg,ah,B0
B1,B0,ab,ec,ad,B0,af,eg,ah,B1
B1,B0,ab,ec,ad,B1,af,eg,ah,B0
B1,B1,ab,ec,ad,B0,af,eg,ah,B0
B1,B1,ab,ec,ad,B1,af,eg,ah,B1
# Bent
B0,B0,eb,B0,ad,ee,V,eg,ah,B1 # complement XOR if touching venom
B0,B0,eb,B1,ad,ee,V,eg,ah,B0
B0,B1,eb,B0,ad,ee,V,eg,ah,B0
B0,B1,eb,B1,ad,ee,V,eg,ah,B1
B1,B0,eb,B0,ad,ee,V,eg,ah,B0
B1,B0,eb,B1,ad,ee,V,eg,ah,B1
B1,B1,eb,B0,ad,ee,V,eg,ah,B1
B1,B1,eb,B1,ad,ee,V,eg,ah,B0
B0,B0,eb,B0,ad,ee,ef,eg,ah,B0 # otherwise use XOR
B0,B0,eb,B1,ad,ee,ef,eg,ah,B1
B0,B1,eb,B0,ad,ee,ef,eg,ah,B1
B0,B1,eb,B1,ad,ee,ef,eg,ah,B0
B1,B0,eb,B0,ad,ee,ef,eg,ah,B1
B1,B0,eb,B1,ad,ee,ef,eg,ah,B0
B1,B1,eb,B0,ad,ee,ef,eg,ah,B0
B1,B1,eb,B1,ad,ee,ef,eg,ah,B1
# Background bit next to just one other becomes it.
B0,B0,ab,ec,ed,ee,ef,eg,ah,B0
B0,B1,ab,ec,ed,ee,ef,eg,ah,B1
B1,B0,ab,ec,ed,ee,ef,eg,ah,B0
B1,B1,ab,ec,ed,ee,ef,eg,ah,B1
#######################################################
##### #####
##### Stability of B cells for walls and labels #####
##### #####
#######################################################
B,Bea,Beb,Bec,Bed,Bee,Bef,Beg,Beh,B
###############################################################################
##### #####
##### Death of cells that can't be part of a snake (for random starts) #####
##### #####
###############################################################################
# These shapes of interior cells are forbidden:
# .i.
# iii
# ...
i,ia,ab,ic,ad,ae,af,ig,ah,dead
# iii
# .i.
# ...
i,ia,ib,ac,ad,ae,af,ag,ih,dead
# .ii
# .ii
# ...
i,ia,ib,ic,ad,ae,af,ag,ah,dead
# .ei
# .ie
# ...
i,ea,ib,ec,ad,ae,af,ag,ah,dead
# End cell not at end
NLRF,ia,ab,ic,ad,ae,af,ag,ah,dead
NLRF,ia,ab,ac,ad,ie,af,ag,ah,dead
# Any cell, except B0 or B1, surrounded by 4 exterior cells
notz,ea,ab,ec,ad,ee,af,eg,ah,dead
# N touching N
N,N,ab,ac,ad,ae,af,ag,ah,dead
# N, L, R, F, or C touching two bits
NLRFC,bita,ab,bitc,ad,ae,af,ag,ah,dead
NLRFC,bita,ab,ac,ad,bite,af,ag,ah,dead
# Two N, L, R, or F's touching
NLRF,NLRFa,ab,ac,ad,ae,af,ag,ah,dead
N,notNneighbora,ab,notNneighborc,ad,notNneighbore,af,notNneighborg,ah,dead
# H not touching bit
H,notHneighbora,ab,notHneighborc,ad,notHneighbore,af,notHneighborg,ah,dead
# H touching H and 3 external cells
H,Ha,ab,ec,ad,ee,af,eg,ah,dead
# NLRF touching RH
NLRF,RHa,ab,ac,ad,ae,af,ag,ah,dead
# B between N and either N or RH
B,N,ab,NRHc,ad,ae,af,ag,ah,dead
B,N,ab,ac,ad,NRHe,af,ag,ah,dead
B,N,ab,ac,ad,ae,af,NRHg,ah,dead
######################################
##### #####
##### Growth at front of snake #####
##### #####
######################################
# First, the N cell becomes either T0 or T1, and some of the 3 adjacent dead
# cells may become A (available).
# The T0 or T1 indicates a tentative choice for which direction to grow:
# T0 means left and T1 means right. But it may be replaced by a different
# choice, depending on the adjacent bit and on which directions are
# available for growth.
# In cases where only one direction is available, the snake may reverse
# instead of growing.
# Growth step 0: N becomes tentative direction, available cells report.
# N -> T0 or T1
N,ea,eb,ec,ad,bit0e,af,eg,eh,T1
N,ea,eb,ec,ad,bit1e,af,eg,eh,T0
# Empty cell next to N may become A or V
z,ea,eb,ec,ad,N,af,eg,eh,A
z,ea,ab,ec,ed,N,ef,eg,ah,V # Spit venom forward if there's a diagonally
# adjacent cell. (But it may not be an XOR
# cell, so it may not get poisoned.)
# Growth step 1: T0 or T1 at front becomes C, L, R, or F
# A A
# Case AAA: A T0 A or A T1 A
# b b
# All 3 directions available. Will either go forward or in first chosen
# direction.
T0,A,eb,A,ad,bit0e,af,A,eh,L
T0,A,eb,A,ad,bit1e,af,A,eh,F
T1,A,eb,A,ad,bit0e,af,A,eh,F
T1,A,eb,A,ad,bit1e,af,A,eh,R
# A A
# Case AAu: A T0 u or u T1 A
# b b
# Two directions available, forward and chosen.
T0,A,eb,uc,ad,bite,af,A,eh,L
T1,A,eb,A,ad,bite,af,ug,eh,R
# A A
# Case uAA: u T0 A or A T1 u
# b b
# Two directions available, forward and opposite of chosen. Grow forward.
T0,A,eb,A,ad,bite,af,ug,eh,F
T1,A,eb,uc,ad,bite,af,A,eh,F
# u u
# Case AuA: A T0 A or A T1 A
# b b
# Left and right available. Grow in chosen direction.
T0,ua,eb,A,ad,bite,af,A,eh,L
T1,ua,eb,A,ad,bite,af,A,eh,R
# u u
# Case Auu: A T0 u or u T1 A
# b b
# Only chosen direction is available, left or right: Grow.
T0,ua,eb,uc,ad,bite,af,A,eh,L
T1,ua,eb,A,ad,bite,af,ug,eh,R
# u u
# Case uuA: u T0 A or A T1 u
# b b
# Only opposite of direction is available.
# Grow unless 1 or 2 adjacent bits also say to go the other way.
T0,ua,eb,A,zd,bit0e,zORbit0f,ug,eh,C1
T0,ua,eb,A,ad,bite,af,ug,eh,R
T1,ua,eb,uc,zORbit1d,bit1e,zf,A,eh,C0
T1,ua,eb,uc,ad,bite,af,A,eh,L
# A A
# Case uAu: u T0 u or u T1 u
# b b
# Only forward direction available.
# Grow unless chosen direction and 1 or 2 adjacent bits all match.
T0,A,eb,uc,zORbit0d,bit0e,zORbit0f,ug,eh,C1
T0,A,eb,uc,ad,bite,af,ug,eh,F
T1,A,eb,uc,zORbit1d,bit1e,zORbit1f,ug,eh,C0
T1,A,eb,uc,ad,bite,af,ug,eh,F
# u u
# Case uuu: u T0 u or u T1 u
# b b
# Can't grow, so change to C.
T0,ua,eb,uc,ad,bit0notRHe,af,ug,eh,C1
T0,ua,eb,uc,ad,bit1notRHe,af,ug,eh,C0
T1,ua,eb,uc,ad,bit0notRHe,af,ug,eh,C1
T1,ua,eb,uc,ad,bit1notRHe,af,ug,eh,C0
# Growth step 2
# Available cell that's left of L, forward of F, or right of R becomes N.
# Otherwise it dies.
# Left
A,za,eb,L,bitd,ze,zf,zg,zh,N
# Forward
A,za,zb,zc,ed,F,ef,zg,zh,N
# Right
A,za,zb,zc,zd,ze,bitf,R,eh,N
# A remains A if touching T cell at front of snake
A,Ta,ab,ac,ad,ae,af,ag,ah,A
# Otherwise A dies
A,aa,ab,ac,ad,ae,af,ag,ah,dead
# V dies immediately
V,aa,ab,ac,ad,ae,af,ag,ah,dead
# L, F, or R becomes C
LRF,ea,eb,ec,ad,bit0e,af,eg,eh,C1
LRF,ea,eb,ec,ad,bit1e,af,eg,eh,C0
########################################
##### #####
##### Signals reach end of snake #####
##### #####
########################################
# Shrink head at end dies
SH0,Ta,ab,ec,ad,ee,af,eg,ah,dead
SH1,Ta,ab,ec,ad,ee,af,eg,ah,dead
# Reverse head reaches end
RH0,Ta,ab,ec,ed,ee,ef,eg,ah,N
RH1,Ta,ab,ec,ed,ee,ef,eg,ah,N
######################################################
##### #####
##### XOR rules for bits touching 2 other bits #####
##### #####
######################################################
# These are the transitions which occur in the interior of a snake. In
# each case, a bit becomes the XOR of itself and its two neighboring bits.
# Exception: If a corner bit is touching two bits, but is also diagonally
# touching a V cell, it becomes the complement of the XOR.
############# RH between RH and T -> RH, for 2-headed snakes #############
# Two reverse heads meeting become reverse heads. (For 2-headed snakes.)
# Straight
RH0,RH0,ab,ec,ad,T0,af,eg,ah,RH0
RH0,RH0,ab,ec,ad,T1,af,eg,ah,RH1
RH0,RH1,ab,ec,ad,T0,af,eg,ah,RH1
RH0,RH1,ab,ec,ad,T1,af,eg,ah,RH0
RH1,RH0,ab,ec,ad,T0,af,eg,ah,RH1
RH1,RH0,ab,ec,ad,T1,af,eg,ah,RH0
RH1,RH1,ab,ec,ad,T0,af,eg,ah,RH0
RH1,RH1,ab,ec,ad,T1,af,eg,ah,RH1
# Bent
RH0,RH0,eb,T0,ad,ee,V,eg,ah,RH1 # complement XOR if touching venom
RH0,RH0,eb,T1,ad,ee,V,eg,ah,RH0
RH0,RH1,eb,T0,ad,ee,V,eg,ah,RH0
RH0,RH1,eb,T1,ad,ee,V,eg,ah,RH1
RH1,RH0,eb,T0,ad,ee,V,eg,ah,RH0
RH1,RH0,eb,T1,ad,ee,V,eg,ah,RH1
RH1,RH1,eb,T0,ad,ee,V,eg,ah,RH1
RH1,RH1,eb,T1,ad,ee,V,eg,ah,RH0
RH0,RH0,eb,T0,ad,ee,ef,eg,ah,RH0 # otherwise use XOR
RH0,RH0,eb,T1,ad,ee,ef,eg,ah,RH1
RH0,RH1,eb,T0,ad,ee,ef,eg,ah,RH1
RH0,RH1,eb,T1,ad,ee,ef,eg,ah,RH0
RH1,RH0,eb,T0,ad,ee,ef,eg,ah,RH1
RH1,RH0,eb,T1,ad,ee,ef,eg,ah,RH0
RH1,RH1,eb,T0,ad,ee,ef,eg,ah,RH0
RH1,RH1,eb,T1,ad,ee,ef,eg,ah,RH1
RH0,RH0,ab,ec,V,ee,af,T0,eh,RH1 # complement XOR if touching venom
RH0,RH0,ab,ec,V,ee,af,T1,eh,RH0
RH0,RH1,ab,ec,V,ee,af,T0,eh,RH0
RH0,RH1,ab,ec,V,ee,af,T1,eh,RH1
RH1,RH0,ab,ec,V,ee,af,T0,eh,RH0
RH1,RH0,ab,ec,V,ee,af,T1,eh,RH1
RH1,RH1,ab,ec,V,ee,af,T0,eh,RH1
RH1,RH1,ab,ec,V,ee,af,T1,eh,RH0
RH0,RH0,ab,ec,ed,ee,af,T0,eh,RH0 # otherwise use XOR
RH0,RH0,ab,ec,ed,ee,af,T1,eh,RH1
RH0,RH1,ab,ec,ed,ee,af,T0,eh,RH1
RH0,RH1,ab,ec,ed,ee,af,T1,eh,RH0
RH1,RH0,ab,ec,ed,ee,af,T0,eh,RH1
RH1,RH0,ab,ec,ed,ee,af,T1,eh,RH0
RH1,RH1,ab,ec,ed,ee,af,T0,eh,RH0
RH1,RH1,ab,ec,ed,ee,af,T1,eh,RH1
############# RH between T's -> RH #############
# RH touching 2 tail cells is unchanged; will split into 2 RH's.
# (For 2-headed snakes.)
# Straight
RH0,T0,ab,ec,ad,T0,af,eg,ah,RH0
RH0,T0,ab,ec,ad,T1,af,eg,ah,RH1
RH0,T1,ab,ec,ad,T0,af,eg,ah,RH1
RH0,T1,ab,ec,ad,T1,af,eg,ah,RH0
RH1,T0,ab,ec,ad,T0,af,eg,ah,RH1
RH1,T0,ab,ec,ad,T1,af,eg,ah,RH0
RH1,T1,ab,ec,ad,T0,af,eg,ah,RH0
RH1,T1,ab,ec,ad,T1,af,eg,ah,RH1
# Bent
RH0,T0,eb,T0,ad,ee,V,eg,ah,RH1 # complement XOR if touching venom
RH0,T0,eb,T1,ad,ee,V,eg,ah,RH0
RH0,T1,eb,T0,ad,ee,V,eg,ah,RH0
RH0,T1,eb,T1,ad,ee,V,eg,ah,RH1
RH1,T0,eb,T0,ad,ee,V,eg,ah,RH0
RH1,T0,eb,T1,ad,ee,V,eg,ah,RH1
RH1,T1,eb,T0,ad,ee,V,eg,ah,RH1
RH1,T1,eb,T1,ad,ee,V,eg,ah,RH0
RH0,T0,eb,T0,ad,ee,ef,eg,ah,RH0 # otherwise use XOR
RH0,T0,eb,T1,ad,ee,ef,eg,ah,RH1
RH0,T1,eb,T0,ad,ee,ef,eg,ah,RH1
RH0,T1,eb,T1,ad,ee,ef,eg,ah,RH0
RH1,T0,eb,T0,ad,ee,ef,eg,ah,RH1
RH1,T0,eb,T1,ad,ee,ef,eg,ah,RH0
RH1,T1,eb,T0,ad,ee,ef,eg,ah,RH0
RH1,T1,eb,T1,ad,ee,ef,eg,ah,RH1
############# B -> SH #############
# Background cell next to shrink signal head becomes shrink signal head.
# (If it's between a shrink head and a reverse head, it becomes a shrink
# head, causing a 2-headed snake to become 1-headed.)
# Straight
B0,SH0,ab,ec,ad,bit0e,af,eg,ah,SH0
B0,SH0,ab,ec,ad,bit1e,af,eg,ah,SH1
B0,SH1,ab,ec,ad,bit0e,af,eg,ah,SH1
B0,SH1,ab,ec,ad,bit1e,af,eg,ah,SH0
B1,SH0,ab,ec,ad,bit0e,af,eg,ah,SH1
B1,SH0,ab,ec,ad,bit1e,af,eg,ah,SH0
B1,SH1,ab,ec,ad,bit0e,af,eg,ah,SH0
B1,SH1,ab,ec,ad,bit1e,af,eg,ah,SH1
# Bent
B0,SH0,eb,bit0c,ad,ee,V,eg,ah,SH1 # complement XOR if touching venom
B0,SH0,eb,bit1c,ad,ee,V,eg,ah,SH0
B0,SH1,eb,bit0c,ad,ee,V,eg,ah,SH0
B0,SH1,eb,bit1c,ad,ee,V,eg,ah,SH1
B1,SH0,eb,bit0c,ad,ee,V,eg,ah,SH0
B1,SH0,eb,bit1c,ad,ee,V,eg,ah,SH1
B1,SH1,eb,bit0c,ad,ee,V,eg,ah,SH1
B1,SH1,eb,bit1c,ad,ee,V,eg,ah,SH0
B0,SH0,eb,bit0c,ad,ee,ef,eg,ah,SH0 # otherwise use XOR
B0,SH0,eb,bit1c,ad,ee,ef,eg,ah,SH1
B0,SH1,eb,bit0c,ad,ee,ef,eg,ah,SH1
B0,SH1,eb,bit1c,ad,ee,ef,eg,ah,SH0
B1,SH0,eb,bit0c,ad,ee,ef,eg,ah,SH1
B1,SH0,eb,bit1c,ad,ee,ef,eg,ah,SH0
B1,SH1,eb,bit0c,ad,ee,ef,eg,ah,SH0
B1,SH1,eb,bit1c,ad,ee,ef,eg,ah,SH1
B0,SH0,ab,ec,V,ee,af,bit0g,eh,SH1 # complement XOR if touching venom
B0,SH0,ab,ec,V,ee,af,bit1g,eh,SH0
B0,SH1,ab,ec,V,ee,af,bit0g,eh,SH0
B0,SH1,ab,ec,V,ee,af,bit1g,eh,SH1
B1,SH0,ab,ec,V,ee,af,bit0g,eh,SH0
B1,SH0,ab,ec,V,ee,af,bit1g,eh,SH1
B1,SH1,ab,ec,V,ee,af,bit0g,eh,SH1
B1,SH1,ab,ec,V,ee,af,bit1g,eh,SH0
B0,SH0,ab,ec,ed,ee,af,bit0g,eh,SH0 # otherwise use XOR
B0,SH0,ab,ec,ed,ee,af,bit1g,eh,SH1
B0,SH1,ab,ec,ed,ee,af,bit0g,eh,SH1
B0,SH1,ab,ec,ed,ee,af,bit1g,eh,SH0
B1,SH0,ab,ec,ed,ee,af,bit0g,eh,SH1
B1,SH0,ab,ec,ed,ee,af,bit1g,eh,SH0
B1,SH1,ab,ec,ed,ee,af,bit0g,eh,SH0
B1,SH1,ab,ec,ed,ee,af,bit1g,eh,SH1
############# B -> RH #############
# Background cell next to reverse signal head becomes reverse signal head.
# Straight
B0,RH0,ab,ec,ad,bit0e,af,eg,ah,RH0
B0,RH0,ab,ec,ad,bit1e,af,eg,ah,RH1
B0,RH1,ab,ec,ad,bit0e,af,eg,ah,RH1
B0,RH1,ab,ec,ad,bit1e,af,eg,ah,RH0
B1,RH0,ab,ec,ad,bit0e,af,eg,ah,RH1
B1,RH0,ab,ec,ad,bit1e,af,eg,ah,RH0
B1,RH1,ab,ec,ad,bit0e,af,eg,ah,RH0
B1,RH1,ab,ec,ad,bit1e,af,eg,ah,RH1
# Bent
B0,RH0,eb,bit0c,ad,ee,V,eg,ah,RH1 # complement XOR if touching venom
B0,RH0,eb,bit1c,ad,ee,V,eg,ah,RH0
B0,RH1,eb,bit0c,ad,ee,V,eg,ah,RH0
B0,RH1,eb,bit1c,ad,ee,V,eg,ah,RH1
B1,RH0,eb,bit0c,ad,ee,V,eg,ah,RH0
B1,RH0,eb,bit1c,ad,ee,V,eg,ah,RH1
B1,RH1,eb,bit0c,ad,ee,V,eg,ah,RH1
B1,RH1,eb,bit1c,ad,ee,V,eg,ah,RH0
B0,RH0,eb,bit0c,ad,ee,ef,eg,ah,RH0 # otherwise use XOR
B0,RH0,eb,bit1c,ad,ee,ef,eg,ah,RH1
B0,RH1,eb,bit0c,ad,ee,ef,eg,ah,RH1
B0,RH1,eb,bit1c,ad,ee,ef,eg,ah,RH0
B1,RH0,eb,bit0c,ad,ee,ef,eg,ah,RH1
B1,RH0,eb,bit1c,ad,ee,ef,eg,ah,RH0
B1,RH1,eb,bit0c,ad,ee,ef,eg,ah,RH0
B1,RH1,eb,bit1c,ad,ee,ef,eg,ah,RH1
B0,RH0,ab,ec,V,ee,af,bit0g,eh,RH1 # complement XOR if touching venom
B0,RH0,ab,ec,V,ee,af,bit1g,eh,RH0
B0,RH1,ab,ec,V,ee,af,bit0g,eh,RH0
B0,RH1,ab,ec,V,ee,af,bit1g,eh,RH1
B1,RH0,ab,ec,V,ee,af,bit0g,eh,RH0
B1,RH0,ab,ec,V,ee,af,bit1g,eh,RH1
B1,RH1,ab,ec,V,ee,af,bit0g,eh,RH1
B1,RH1,ab,ec,V,ee,af,bit1g,eh,RH0
B0,RH0,ab,ec,ed,ee,af,bit0g,eh,RH0 # otherwise use XOR
B0,RH0,ab,ec,ed,ee,af,bit1g,eh,RH1
B0,RH1,ab,ec,ed,ee,af,bit0g,eh,RH1
B0,RH1,ab,ec,ed,ee,af,bit1g,eh,RH0
B1,RH0,ab,ec,ed,ee,af,bit0g,eh,RH1
B1,RH0,ab,ec,ed,ee,af,bit1g,eh,RH0
B1,RH1,ab,ec,ed,ee,af,bit0g,eh,RH0
B1,RH1,ab,ec,ed,ee,af,bit1g,eh,RH1
############# SH or RH -> T #############
# Signal head becomes signal tail
# Straight
H0,bit0a,ab,ec,ad,bit0e,af,eg,ah,T0
H0,bit0a,ab,ec,ad,bit1e,af,eg,ah,T1
H0,bit1a,ab,ec,ad,bit0e,af,eg,ah,T1
H0,bit1a,ab,ec,ad,bit1e,af,eg,ah,T0
H1,bit0a,ab,ec,ad,bit0e,af,eg,ah,T1
H1,bit0a,ab,ec,ad,bit1e,af,eg,ah,T0
H1,bit1a,ab,ec,ad,bit0e,af,eg,ah,T0
H1,bit1a,ab,ec,ad,bit1e,af,eg,ah,T1
# Bent
H0,bit0a,eb,bit0c,ad,ee,V,eg,ah,T1 # complement XOR if touching venom
H0,bit0a,eb,bit1c,ad,ee,V,eg,ah,T0
H0,bit1a,eb,bit0c,ad,ee,V,eg,ah,T0
H0,bit1a,eb,bit1c,ad,ee,V,eg,ah,T1
H1,bit0a,eb,bit0c,ad,ee,V,eg,ah,T0
H1,bit0a,eb,bit1c,ad,ee,V,eg,ah,T1
H1,bit1a,eb,bit0c,ad,ee,V,eg,ah,T1
H1,bit1a,eb,bit1c,ad,ee,V,eg,ah,T0
H0,bit0a,eb,bit0c,ad,ee,ef,eg,ah,T0 # otherwise use XOR
H0,bit0a,eb,bit1c,ad,ee,ef,eg,ah,T1
H0,bit1a,eb,bit0c,ad,ee,ef,eg,ah,T1
H0,bit1a,eb,bit1c,ad,ee,ef,eg,ah,T0
H1,bit0a,eb,bit0c,ad,ee,ef,eg,ah,T1
H1,bit0a,eb,bit1c,ad,ee,ef,eg,ah,T0
H1,bit1a,eb,bit0c,ad,ee,ef,eg,ah,T0
H1,bit1a,eb,bit1c,ad,ee,ef,eg,ah,T1
############# B or T -> B #############
# Background or signal tail becomes background
# Straight
BT0,bit0a,ab,ec,ad,bit0e,af,eg,ah,B0
BT0,bit0a,ab,ec,ad,bit1e,af,eg,ah,B1
BT0,bit1a,ab,ec,ad,bit0e,af,eg,ah,B1
BT0,bit1a,ab,ec,ad,bit1e,af,eg,ah,B0
BT1,bit0a,ab,ec,ad,bit0e,af,eg,ah,B1
BT1,bit0a,ab,ec,ad,bit1e,af,eg,ah,B0
BT1,bit1a,ab,ec,ad,bit0e,af,eg,ah,B0
BT1,bit1a,ab,ec,ad,bit1e,af,eg,ah,B1
# Bent
BT0,bit0a,eb,bit0c,ad,ee,V,eg,ah,B1 # complement XOR if touching venom
BT0,bit0a,eb,bit1c,ad,ee,V,eg,ah,B0
BT0,bit1a,eb,bit0c,ad,ee,V,eg,ah,B0
BT0,bit1a,eb,bit1c,ad,ee,V,eg,ah,B1
BT1,bit0a,eb,bit0c,ad,ee,V,eg,ah,B0
BT1,bit0a,eb,bit1c,ad,ee,V,eg,ah,B1
BT1,bit1a,eb,bit0c,ad,ee,V,eg,ah,B1
BT1,bit1a,eb,bit1c,ad,ee,V,eg,ah,B0
BT0,bit0a,eb,bit0c,ad,ee,ef,eg,ah,B0 # otherwise use XOR
BT0,bit0a,eb,bit1c,ad,ee,ef,eg,ah,B1
BT0,bit1a,eb,bit0c,ad,ee,ef,eg,ah,B1
BT0,bit1a,eb,bit1c,ad,ee,ef,eg,ah,B0
BT1,bit0a,eb,bit0c,ad,ee,ef,eg,ah,B1
BT1,bit0a,eb,bit1c,ad,ee,ef,eg,ah,B0
BT1,bit1a,eb,bit0c,ad,ee,ef,eg,ah,B0
BT1,bit1a,eb,bit1c,ad,ee,ef,eg,ah,B1
##########################################################################
##### #####
##### Rules for cells that become bits, but only touch 1 other bit #####
##### #####
##########################################################################
# In these transitions, a bit is next to just one other bit. It becomes
# the complement of that bit, unless it's currently a background bit and
# will be a background bit in the next generation. (This exception
# prevents some uninteresting behaviour.)
# Head moves into end cell
B0,RH0,ab,ac,ad,ae,af,ag,ah,RH1
B0,RH1,ab,ac,ad,ae,af,ag,ah,RH0
B1,RH0,ab,ac,ad,ae,af,ag,ah,RH1
B1,RH1,ab,ac,ad,ae,af,ag,ah,RH0
B0,SH0,ab,ac,ad,ae,af,ag,ah,SH1
B0,SH1,ab,ac,ad,ae,af,ag,ah,SH0
B1,SH0,ab,ac,ad,ae,af,ag,ah,SH1
B1,SH1,ab,ac,ad,ae,af,ag,ah,SH0
# Background bit next to just one bit becomes it.
B0,bit0a,ab,ac,ad,ae,af,ag,ah,B0
B0,bit1a,ab,ac,ad,ae,af,ag,ah,B1
B1,bit0a,ab,ac,ad,ae,af,ag,ah,B0
B1,bit1a,ab,ac,ad,ae,af,ag,ah,B1
# When first created, reverse head is at end, not next to tail cell
RH0,B0,ab,ac,ad,ae,af,ag,ah,T1
RH0,B1,ab,ac,ad,ae,af,ag,ah,T0
RH1,B0,ab,ac,ad,ae,af,ag,ah,T1
RH1,B1,ab,ac,ad,ae,af,ag,ah,T0
# Tail bit between F and SH
T0,bit0a,ab,ac,ad,ae,af,ag,ah,B1
T0,bit1a,ab,ac,ad,ae,af,ag,ah,B0
T1,bit0a,ab,ac,ad,ae,af,ag,ah,B1
T1,bit1a,ab,ac,ad,ae,af,ag,ah,B0
# C becomes SH if touching N
C,N,ab,ac,ad,bit0e,af,ag,ah,SH1
C,N,ab,ac,ad,bit1e,af,ag,ah,SH0
C,aa,ab,N,ad,bit0e,af,ag,ah,SH1
C,aa,ab,N,ad,bit1e,af,ag,ah,SH0
C,aa,ab,ac,ad,bit0e,af,N,ah,SH1
C,aa,ab,ac,ad,bit1e,af,N,ah,SH0
# C becomes RH if not touching N
C,aa,ab,ac,ad,bit0e,af,ag,ah,RH1
C,aa,ab,ac,ad,bit1e,af,ag,ah,RH0
#########################
##### #####
##### Z cells die #####
##### #####
#########################
# Z dies (Used when switching back from Snakes-history.)
Z,aa,ab,ac,ad,ae,af,ag,ah,dead
@COLORS
# Colors for snakes rule
# by Dean Hickerson, 11/27/2011 - 2/26/2012]
0 0 0 0 (0 Black)
1 255 255 0 (B Yellow)
2 255 255 0
3 255 0 0 (T Red)
4 255 0 0
5 0 255 255 (SH Cyan)
6 0 255 255
7 0 255 0 (RH Lime)
8 0 255 0
9 75 0 130 (C Indigo)
10 75 0 130
11 128 0 0 (N Maroon)
12 0 0 255 (L Blue)
13 0 128 128 (R Teal)
14 128 128 0 (F Olive)
15 139 69 19 (A SaddleBrown)
16 255 255 255 (V White)
17 105 105 105 (Z DimGrey)
@ICONS
XPM
/* width height num_colors chars_per_pixel */
"31 527 17 1"
/* colors */
"A c #FFFF00"
". c #000000"
"C c #FF0000"
"D c #00FFFF"
"E c #00FF00"
"F c #4B0082"
"G c #FFFFFF"
"H c #800000"
"I c #0000FF"
"J c #008080"
"K c #808000"
"L c #8B4513"
"M c #606060"
"N c #E0E0E0"
"O c #404040"
"P c #808080"
"Q c #696969"
/* icon for state 1 */
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAA....AAAAA"
"AAAAAAAAAAAAAAAAAAAAA......AAAA"
"AAAAAAAAAAAAAAAAAAAAA..AA..AAAA"
"AAAAAAAAAAAAAAAAAAAAA..AA..AAAA"
"AAAAAAAAAAAAAAAAAAAAA..AA..AAAA"
"AAAAAAAAAAAAAAAAAAAAA..AA..AAAA"
"AAAAAAAAAAAAAAAAAAAAA......AAAA"
"AAAAAAAAAAAAAAAAAAAAAA....AAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
/* icon for state 2 */
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAA..AAAAAA"
"AAAAAAAAAAAAAAAAAAAAAA...AAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAA..AAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAA..AAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAA..AAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAA..AAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAA..AAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAA..AAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
/* icon for state 3 */
"CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC"
"CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC"
"CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC"
"CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC"
"CCCCCCCCCC...........CCCCCCCCCC"
"CCCCCCCCCC...........CCCCCCCCCC"
"CCCCCCCCCCCCCC...CCCCCCCCCCCCCC"
"CCCCCCCCCCCCCC...CCCCCCCCCCCCCC"
"CCCCCCCCCCCCCC...CCCCCCCCCCCCCC"
"CCCCCCCCCCCCCC...CCCCCCCCCCCCCC"
"CCCCCCCCCCCCCC...CCCCCCCCCCCCCC"
"CCCCCCCCCCCCCC...CCCCCCCCCCCCCC"
"CCCCCCCCCCCCCC...CCCCCCCCCCCCCC"
"CCCCCCCCCCCCCC...CCCCCCCCCCCCCC"
"CCCCCCCCCCCCCC...CCCCCCCCCCCCCC"
"CCCCCCCCCCCCCC...CCCCCCCCCCCCCC"
"CCCCCCCCCCCCCC...CCCCCCCCCCCCCC"
"CCCCCCCCCCCCCC...CCCCCCCCCCCCCC"
"CCCCCCCCCCCCCC...CCCCCCCCCCCCCC"
"CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC"
"CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC"
"CCCCCCCCCCCCCCCCCCCCCC....CCCCC"
"CCCCCCCCCCCCCCCCCCCCC......CCCC"
"CCCCCCCCCCCCCCCCCCCCC..CC..CCCC"
"CCCCCCCCCCCCCCCCCCCCC..CC..CCCC"
"CCCCCCCCCCCCCCCCCCCCC..CC..CCCC"
"CCCCCCCCCCCCCCCCCCCCC..CC..CCCC"
"CCCCCCCCCCCCCCCCCCCCC......CCCC"
"CCCCCCCCCCCCCCCCCCCCCC....CCCCC"
"CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC"
"CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC"
/* icon for state 4 */
"CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC"
"CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC"
"CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC"
"CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC"
"CCCCCCCCCC...........CCCCCCCCCC"
"CCCCCCCCCC...........CCCCCCCCCC"
"CCCCCCCCCCCCCC...CCCCCCCCCCCCCC"
"CCCCCCCCCCCCCC...CCCCCCCCCCCCCC"
"CCCCCCCCCCCCCC...CCCCCCCCCCCCCC"
"CCCCCCCCCCCCCC...CCCCCCCCCCCCCC"
"CCCCCCCCCCCCCC...CCCCCCCCCCCCCC"
"CCCCCCCCCCCCCC...CCCCCCCCCCCCCC"
"CCCCCCCCCCCCCC...CCCCCCCCCCCCCC"
"CCCCCCCCCCCCCC...CCCCCCCCCCCCCC"
"CCCCCCCCCCCCCC...CCCCCCCCCCCCCC"
"CCCCCCCCCCCCCC...CCCCCCCCCCCCCC"
"CCCCCCCCCCCCCC...CCCCCCCCCCCCCC"
"CCCCCCCCCCCCCC...CCCCCCCCCCCCCC"
"CCCCCCCCCCCCCC...CCCCCCCCCCCCCC"
"CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC"
"CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC"
"CCCCCCCCCCCCCCCCCCCCCCC..CCCCCC"
"CCCCCCCCCCCCCCCCCCCCCC...CCCCCC"
"CCCCCCCCCCCCCCCCCCCCCCC..CCCCCC"
"CCCCCCCCCCCCCCCCCCCCCCC..CCCCCC"
"CCCCCCCCCCCCCCCCCCCCCCC..CCCCCC"
"CCCCCCCCCCCCCCCCCCCCCCC..CCCCCC"
"CCCCCCCCCCCCCCCCCCCCCCC..CCCCCC"
"CCCCCCCCCCCCCCCCCCCCCCC..CCCCCC"
"CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC"
"CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC"
/* icon for state 5 */
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDD......DDDDDD..DDDDD..DDDD"
"DDDDD........DDDDD..DDDDD..DDDD"
"DDDD...DDDD..DDDDD..DDDDD..DDDD"
"DDDD..DDDDDDDDDDDD..DDDDD..DDDD"
"DDDD..DDDDDDDDDDDD..DDDDD..DDDD"
"DDDD...DDDDDDDDDDD..DDDDD..DDDD"
"DDDDD....DDDDDDDDD.........DDDD"
"DDDDDD.....DDDDDDD.........DDDD"
"DDDDDDDD....DDDDDD..DDDDD..DDDD"
"DDDDDDDDDD...DDDDD..DDDDD..DDDD"
"DDDDDDDDDDD..DDDDD..DDDDD..DDDD"
"DDDDDDDDDDD..DDDDD..DDDDD..DDDD"
"DDDD..DDDD...DDDDD..DDDDD..DDDD"
"DDDD........DDDDDD..DDDDD..DDDD"
"DDDDD......DDDDDDD..DDDDD..DDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDD....DDDDD"
"DDDDDDDDDDDDDDDDDDDDD......DDDD"
"DDDDDDDDDDDDDDDDDDDDD..DD..DDDD"
"DDDDDDDDDDDDDDDDDDDDD..DD..DDDD"
"DDDDDDDDDDDDDDDDDDDDD..DD..DDDD"
"DDDDDDDDDDDDDDDDDDDDD..DD..DDDD"
"DDDDDDDDDDDDDDDDDDDDD......DDDD"
"DDDDDDDDDDDDDDDDDDDDDD....DDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
/* icon for state 6 */
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDD......DDDDDD..DDDDD..DDDD"
"DDDDD........DDDDD..DDDDD..DDDD"
"DDDD...DDDD..DDDDD..DDDDD..DDDD"
"DDDD..DDDDDDDDDDDD..DDDDD..DDDD"
"DDDD..DDDDDDDDDDDD..DDDDD..DDDD"
"DDDD...DDDDDDDDDDD..DDDDD..DDDD"
"DDDDD....DDDDDDDDD.........DDDD"
"DDDDDD.....DDDDDDD.........DDDD"
"DDDDDDDD....DDDDDD..DDDDD..DDDD"
"DDDDDDDDDD...DDDDD..DDDDD..DDDD"
"DDDDDDDDDDD..DDDDD..DDDDD..DDDD"
"DDDDDDDDDDD..DDDDD..DDDDD..DDDD"
"DDDD..DDDD...DDDDD..DDDDD..DDDD"
"DDDD........DDDDDD..DDDDD..DDDD"
"DDDDD......DDDDDDD..DDDDD..DDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDD..DDDDDD"
"DDDDDDDDDDDDDDDDDDDDDD...DDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDD..DDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDD..DDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDD..DDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDD..DDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDD..DDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDD..DDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD"
/* icon for state 7 */
"EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE"
"EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE"
"EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE"
"EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE"
"EEEE.......EEEEEEE..EEEEE..EEEE"
"EEEE........EEEEEE..EEEEE..EEEE"
"EEEE..EEEE...EEEEE..EEEEE..EEEE"
"EEEE..EEEEE..EEEEE..EEEEE..EEEE"
"EEEE..EEEEE..EEEEE..EEEEE..EEEE"
"EEEE..EEEE...EEEEE..EEEEE..EEEE"
"EEEE........EEEEEE.........EEEE"
"EEEE.......EEEEEEE.........EEEE"
"EEEE..EEE...EEEEEE..EEEEE..EEEE"
"EEEE..EEEE...EEEEE..EEEEE..EEEE"
"EEEE..EEEEE..EEEEE..EEEEE..EEEE"
"EEEE..EEEEE..EEEEE..EEEEE..EEEE"
"EEEE..EEEEE..EEEEE..EEEEE..EEEE"
"EEEE..EEEEE..EEEEE..EEEEE..EEEE"
"EEEE..EEEEE..EEEEE..EEEEE..EEEE"
"EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE"
"EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE"
"EEEEEEEEEEEEEEEEEEEEEE....EEEEE"
"EEEEEEEEEEEEEEEEEEEEE......EEEE"
"EEEEEEEEEEEEEEEEEEEEE..EE..EEEE"
"EEEEEEEEEEEEEEEEEEEEE..EE..EEEE"
"EEEEEEEEEEEEEEEEEEEEE..EE..EEEE"
"EEEEEEEEEEEEEEEEEEEEE..EE..EEEE"
"EEEEEEEEEEEEEEEEEEEEE......EEEE"
"EEEEEEEEEEEEEEEEEEEEEE....EEEEE"
"EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE"
"EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE"
/* icon for state 8 */
"EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE"
"EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE"
"EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE"
"EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE"
"EEEE.......EEEEEEE..EEEEE..EEEE"
"EEEE........EEEEEE..EEEEE..EEEE"
"EEEE..EEEE...EEEEE..EEEEE..EEEE"
"EEEE..EEEEE..EEEEE..EEEEE..EEEE"
"EEEE..EEEEE..EEEEE..EEEEE..EEEE"
"EEEE..EEEE...EEEEE..EEEEE..EEEE"
"EEEE........EEEEEE.........EEEE"
"EEEE.......EEEEEEE.........EEEE"
"EEEE..EEE...EEEEEE..EEEEE..EEEE"
"EEEE..EEEE...EEEEE..EEEEE..EEEE"
"EEEE..EEEEE..EEEEE..EEEEE..EEEE"
"EEEE..EEEEE..EEEEE..EEEEE..EEEE"
"EEEE..EEEEE..EEEEE..EEEEE..EEEE"
"EEEE..EEEEE..EEEEE..EEEEE..EEEE"
"EEEE..EEEEE..EEEEE..EEEEE..EEEE"
"EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE"
"EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE"
"EEEEEEEEEEEEEEEEEEEEEEE..EEEEEE"
"EEEEEEEEEEEEEEEEEEEEEE...EEEEEE"
"EEEEEEEEEEEEEEEEEEEEEEE..EEEEEE"
"EEEEEEEEEEEEEEEEEEEEEEE..EEEEEE"
"EEEEEEEEEEEEEEEEEEEEEEE..EEEEEE"
"EEEEEEEEEEEEEEEEEEEEEEE..EEEEEE"
"EEEEEEEEEEEEEEEEEEEEEEE..EEEEEE"
"EEEEEEEEEEEEEEEEEEEEEEE..EEEEEE"
"EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE"
"EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE"
/* icon for state 9 */
"FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
"FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
"FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
"FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
"FFFFFFFFFFGGGGGGGFFFFFFFFFFFFFF"
"FFFFFFFFFGGGGGGGGGFFFFFFFFFFFFF"
"FFFFFFFFGGGFFFFFGGGFFFFFFFFFFFF"
"FFFFFFFFGGFFFFFFFGGFFFFFFFFFFFF"
"FFFFFFFFGGFFFFFFFFFFFFFFFFFFFFF"
"FFFFFFFFGGFFFFFFFFFFFFFFFFFFFFF"
"FFFFFFFFGGFFFFFFFFFFFFFFFFFFFFF"
"FFFFFFFFGGFFFFFFFFFFFFFFFFFFFFF"
"FFFFFFFFGGFFFFFFFFFFFFFFFFFFFFF"
"FFFFFFFFGGFFFFFFFFFFFFFFFFFFFFF"
"FFFFFFFFGGFFFFFFFFFFFFFFFFFFFFF"
"FFFFFFFFGGFFFFFFFGGFFFFFFFFFFFF"
"FFFFFFFFGGGFFFFFGGGFFFFFFFFFFFF"
"FFFFFFFFFGGGGGGGGGFFFFFFFFFFFFF"
"FFFFFFFFFFGGGGGGGFFFFFFFFFFFFFF"
"FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
"FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
"FFFFFFFFFFFFFFFFFFFFFFGGGGFFFFF"
"FFFFFFFFFFFFFFFFFFFFFGGGGGGFFFF"
"FFFFFFFFFFFFFFFFFFFFFGGFFGGFFFF"
"FFFFFFFFFFFFFFFFFFFFFGGFFGGFFFF"
"FFFFFFFFFFFFFFFFFFFFFGGFFGGFFFF"
"FFFFFFFFFFFFFFFFFFFFFGGFFGGFFFF"
"FFFFFFFFFFFFFFFFFFFFFGGGGGGFFFF"
"FFFFFFFFFFFFFFFFFFFFFFGGGGFFFFF"
"FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
"FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
/* icon for state 10 */
"FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
"FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
"FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
"FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
"FFFFFFFFFFGGGGGGGFFFFFFFFFFFFFF"
"FFFFFFFFFGGGGGGGGGFFFFFFFFFFFFF"
"FFFFFFFFGGGFFFFFGGGFFFFFFFFFFFF"
"FFFFFFFFGGFFFFFFFGGFFFFFFFFFFFF"
"FFFFFFFFGGFFFFFFFFFFFFFFFFFFFFF"
"FFFFFFFFGGFFFFFFFFFFFFFFFFFFFFF"
"FFFFFFFFGGFFFFFFFFFFFFFFFFFFFFF"
"FFFFFFFFGGFFFFFFFFFFFFFFFFFFFFF"
"FFFFFFFFGGFFFFFFFFFFFFFFFFFFFFF"
"FFFFFFFFGGFFFFFFFFFFFFFFFFFFFFF"
"FFFFFFFFGGFFFFFFFFFFFFFFFFFFFFF"
"FFFFFFFFGGFFFFFFFGGFFFFFFFFFFFF"
"FFFFFFFFGGGFFFFFGGGFFFFFFFFFFFF"
"FFFFFFFFFGGGGGGGGGFFFFFFFFFFFFF"
"FFFFFFFFFFGGGGGGGFFFFFFFFFFFFFF"
"FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
"FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
"FFFFFFFFFFFFFFFFFFFFFFFGGFFFFFF"
"FFFFFFFFFFFFFFFFFFFFFFGGGFFFFFF"
"FFFFFFFFFFFFFFFFFFFFFFFGGFFFFFF"
"FFFFFFFFFFFFFFFFFFFFFFFGGFFFFFF"
"FFFFFFFFFFFFFFFFFFFFFFFGGFFFFFF"
"FFFFFFFFFFFFFFFFFFFFFFFGGFFFFFF"
"FFFFFFFFFFFFFFFFFFFFFFFGGFFFFFF"
"FFFFFFFFFFFFFFFFFFFFFFFGGFFFFFF"
"FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
"FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
/* icon for state 11 */
"HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH"
"HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH"
"HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH"
"HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH"
"HHHHHHHHHHGGHHHHHHHGGHHHHHHHHHH"
"HHHHHHHHHHGGHHHHHHHGGHHHHHHHHHH"
"HHHHHHHHHHGGGHHHHHHGGHHHHHHHHHH"
"HHHHHHHHHHGGGGHHHHHGGHHHHHHHHHH"
"HHHHHHHHHHGGGGGHHHHGGHHHHHHHHHH"
"HHHHHHHHHHGGHGGGHHHGGHHHHHHHHHH"
"HHHHHHHHHHGGHHGGGHHGGHHHHHHHHHH"
"HHHHHHHHHHGGHHHGGGHGGHHHHHHHHHH"
"HHHHHHHHHHGGHHHHGGGGGHHHHHHHHHH"
"HHHHHHHHHHGGHHHHHGGGGHHHHHHHHHH"
"HHHHHHHHHHGGHHHHHHGGGHHHHHHHHHH"
"HHHHHHHHHHGGHHHHHHHGGHHHHHHHHHH"
"HHHHHHHHHHGGHHHHHHHGGHHHHHHHHHH"
"HHHHHHHHHHGGHHHHHHHGGHHHHHHHHHH"
"HHHHHHHHHHGGHHHHHHHGGHHHHHHHHHH"
"HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH"
"HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH"
"HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH"
"HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH"
"HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH"
"HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH"
"HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH"
"HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH"
"HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH"
"HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH"
"HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH"
"HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH"
/* icon for state 12 */
"IIIIIIIIIIIIIIIIIIIIIIIIIIIIIII"
"IIIIIIIIIIIIIIIIIIIIIIIIIIIIIII"
"IIIIIIIIIIIIIIIIIIIIIIIIIIIIIII"
"IIIIIIIIIIIIIIIIIIIIIIIIIIIIIII"
"IIIIIIIIIIGGIIIIIIIIIIIIIIIIIII"
"IIIIIIIIIIGGIIIIIIIIIIIIIIIIIII"
"IIIIIIIIIIGGIIIIIIIIIIIIIIIIIII"
"IIIIIIIIIIGGIIIIIIIIIIIIIIIIIII"
"IIIIIIIIIIGGIIIIIIIIIIIIIIIIIII"
"IIIIIIIIIIGGIIIIIIIIIIIIIIIIIII"
"IIIIIIIIIIGGIIIIIIIIIIIIIIIIIII"
"IIIIIIIIIIGGIIIIIIIIIIIIIIIIIII"
"IIIIIIIIIIGGIIIIIIIIIIIIIIIIIII"
"IIIIIIIIIIGGIIIIIIIIIIIIIIIIIII"
"IIIIIIIIIIGGIIIIIIIIIIIIIIIIIII"
"IIIIIIIIIIGGIIIIIIIIIIIIIIIIIII"
"IIIIIIIIIIGGIIIIIIIIIIIIIIIIIII"
"IIIIIIIIIIGGGGGGGGGGGIIIIIIIIII"
"IIIIIIIIIIGGGGGGGGGGGIIIIIIIIII"
"IIIIIIIIIIIIIIIIIIIIIIIIIIIIIII"
"IIIIIIIIIIIIIIIIIIIIIIIIIIIIIII"
"IIIIIIIIIIIIIIIIIIIIIIIIIIIIIII"
"IIIIIIIIIIIIIIIIIIIIIIIIIIIIIII"
"IIIIIIIIIIIIIIIIIIIIIIIIIIIIIII"
"IIIIIIIIIIIIIIIIIIIIIIIIIIIIIII"
"IIIIIIIIIIIIIIIIIIIIIIIIIIIIIII"
"IIIIIIIIIIIIIIIIIIIIIIIIIIIIIII"
"IIIIIIIIIIIIIIIIIIIIIIIIIIIIIII"
"IIIIIIIIIIIIIIIIIIIIIIIIIIIIIII"
"IIIIIIIIIIIIIIIIIIIIIIIIIIIIIII"
"IIIIIIIIIIIIIIIIIIIIIIIIIIIIIII"
/* icon for state 13 */
"JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ"
"JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ"
"JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ"
"JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ"
"JJJJJJJJJJGGGGGGGGGJJJJJJJJJJJJ"
"JJJJJJJJJJGGGGGGGGGGJJJJJJJJJJJ"
"JJJJJJJJJJGGJJJJJJJGGJJJJJJJJJJ"
"JJJJJJJJJJGGJJJJJJJGGJJJJJJJJJJ"
"JJJJJJJJJJGGJJJJJJJGGJJJJJJJJJJ"
"JJJJJJJJJJGGJJJJJJJGGJJJJJJJJJJ"
"JJJJJJJJJJGGGGGGGGGGGJJJJJJJJJJ"
"JJJJJJJJJJGGGGGGGGGGJJJJJJJJJJJ"
"JJJJJJJJJJGGJJJJJGGJJJJJJJJJJJJ"
"JJJJJJJJJJGGJJJJJJGGJJJJJJJJJJJ"
"JJJJJJJJJJGGJJJJJJJGGJJJJJJJJJJ"
"JJJJJJJJJJGGJJJJJJJGGJJJJJJJJJJ"
"JJJJJJJJJJGGJJJJJJJGGJJJJJJJJJJ"
"JJJJJJJJJJGGJJJJJJJGGJJJJJJJJJJ"
"JJJJJJJJJJGGJJJJJJJGGJJJJJJJJJJ"
"JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ"
"JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ"
"JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ"
"JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ"
"JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ"
"JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ"
"JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ"
"JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ"
"JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ"
"JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ"
"JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ"
"JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ"
/* icon for state 14 */
"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK"
"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK"
"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK"
"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK"
"KKKKKKKKKKGGGGGGGGGGGKKKKKKKKKK"
"KKKKKKKKKKGGGGGGGGGGGKKKKKKKKKK"
"KKKKKKKKKKGGKKKKKKKKKKKKKKKKKKK"
"KKKKKKKKKKGGKKKKKKKKKKKKKKKKKKK"
"KKKKKKKKKKGGKKKKKKKKKKKKKKKKKKK"
"KKKKKKKKKKGGKKKKKKKKKKKKKKKKKKK"
"KKKKKKKKKKGGGGGGGGGKKKKKKKKKKKK"
"KKKKKKKKKKGGGGGGGGGKKKKKKKKKKKK"
"KKKKKKKKKKGGKKKKKKKKKKKKKKKKKKK"
"KKKKKKKKKKGGKKKKKKKKKKKKKKKKKKK"
"KKKKKKKKKKGGKKKKKKKKKKKKKKKKKKK"
"KKKKKKKKKKGGKKKKKKKKKKKKKKKKKKK"
"KKKKKKKKKKGGKKKKKKKKKKKKKKKKKKK"
"KKKKKKKKKKGGKKKKKKKKKKKKKKKKKKK"
"KKKKKKKKKKGGKKKKKKKKKKKKKKKKKKK"
"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK"
"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK"
"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK"
"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK"
"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK"
"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK"
"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK"
"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK"
"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK"
"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK"
"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK"
"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK"
/* icon for state 15 */
"..............................."
"..............................."
"..............................."
"..............................."
"...............L..............."
"..............LLL.............."
".............LLLLL............."
"............LLL.LLL............"
"...........LLL...LLL..........."
"...........LL.....LL..........."
"..........LL.......LL.........."
"..........LLLLLLLLLLL.........."
"..........LLLLLLLLLLL.........."
"..........LL.......LL.........."
"..........LL.......LL.........."
"..........LL.......LL.........."
"..........LL.......LL.........."
"..........LL.......LL.........."
"..........LL.......LL.........."
"..............................."
"..............................."
"..............................."
"..............................."
"..............................."
"..............................."
"..............................."
"..............................."
"..............................."
"..............................."
"..............................."
"..............................."
/* icon for state 16 */
"..............................."
"..............................."
"..............................."
"..............................."
"..............................."
"..............................."
"............MNGGGNM............"
"..........ONGGGGGGGNO.........."
".........PGGGGGGGGGGGP........."
"........PGGGGGGGGGGGGGP........"
".......OGGGGGGGGGGGGGGGO......."
".......NGGGGGGGGGGGGGGGN......."
"......MGGGGGGGGGGGGGGGGGM......"
"......NGGGGGGGGGGGGGGGGGN......"
"......GGGGGGGGGGGGGGGGGGG......"
"......GGGGGGGGGGGGGGGGGGG......"
"......GGGGGGGGGGGGGGGGGGG......"
"......NGGGGGGGGGGGGGGGGGN......"
"......MGGGGGGGGGGGGGGGGGM......"
".......NGGGGGGGGGGGGGGGN......."
".......OGGGGGGGGGGGGGGGO......."
"........PGGGGGGGGGGGGGP........"
".........PGGGGGGGGGGGP........."
"..........ONGGGGGGGNO.........."
"............MNGGGNM............"
"..............................."
"..............................."
"..............................."
"..............................."
"..............................."
"..............................."
/* icon for state 17 */
"QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ"
"QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ"
"QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ"
"QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ"
"QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ"
"QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ"
"QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ"
"QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ"
"QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ"
"QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ"
"QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ"
"QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ"
"QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ"
"QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ"
"QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ"
"QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ"
"QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ"
"QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ"
"QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ"
"QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ"
"QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ"
"QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ"
"QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ"
"QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ"
"QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ"
"QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ"
"QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ"
"QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ"
"QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ"
"QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ"
"QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ"
XPM
/* width height num_colors chars_per_pixel */
"15 255 18 1"
/* colors */
"A c #FFFF00"
". c #000000"
"C c #FF0000"
"D c #00FFFF"
"E c #00FF00"
"F c #4B0082"
"G c #FFFFFF"
"H c #800000"
"I c #0000FF"
"J c #008080"
"K c #808000"
"L c #8B4513"
"M c #606060"
"N c #E0E0E0"
"O c #404040"
"P c #808080"
"Q c #696969"
"R c #C0C0C0"
/* icon for state 1 */
"AAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAA"
"AAAAAAAAAA...AA"
"AAAAAAAAAA.A.AA"
"AAAAAAAAAA.A.AA"
"AAAAAAAAAA...AA"
"AAAAAAAAAAAAAAA"
/* icon for state 2 */
"AAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAA"
"AAAAAAAAAAAAAAA"
"AAAAAAAAAAA.AAA"
"AAAAAAAAAAA.AAA"
"AAAAAAAAAAA.AAA"
"AAAAAAAAAAA.AAA"
"AAAAAAAAAAAAAAA"
/* icon for state 3 */
"CCCCCCCCCCCCCCC"
"CCCCCCCCCCCCCCC"
"CCCCC.....CCCCC"
"CCCCCCC.CCCCCCC"
"CCCCCCC.CCCCCCC"
"CCCCCCC.CCCCCCC"
"CCCCCCC.CCCCCCC"
"CCCCCCC.CCCCCCC"
"CCCCCCC.CCCCCCC"
"CCCCCCCCCCCCCCC"
"CCCCCCCCCC...CC"
"CCCCCCCCCC.C.CC"
"CCCCCCCCCC.C.CC"
"CCCCCCCCCC...CC"
"CCCCCCCCCCCCCCC"
/* icon for state 4 */
"CCCCCCCCCCCCCCC"
"CCCCCCCCCCCCCCC"
"CCCCC.....CCCCC"
"CCCCCCC.CCCCCCC"
"CCCCCCC.CCCCCCC"
"CCCCCCC.CCCCCCC"
"CCCCCCC.CCCCCCC"
"CCCCCCC.CCCCCCC"
"CCCCCCC.CCCCCCC"
"CCCCCCCCCCCCCCC"
"CCCCCCCCCCC.CCC"
"CCCCCCCCCCC.CCC"
"CCCCCCCCCCC.CCC"
"CCCCCCCCCCC.CCC"
"CCCCCCCCCCCCCCC"
/* icon for state 5 */
"DDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDD"
"DDD...DDD.DD.DD"
"DD.DDDDDD.DD.DD"
"DD.DDDDDD.DD.DD"
"DDD..DDDD....DD"
"DDDDD.DDD.DD.DD"
"DDDDD.DDD.DD.DD"
"DD...DDDD.DD.DD"
"DDDDDDDDDDDDDDD"
"DDDDDDDDDD...DD"
"DDDDDDDDDD.D.DD"
"DDDDDDDDDD.D.DD"
"DDDDDDDDDD...DD"
"DDDDDDDDDDDDDDD"
/* icon for state 6 */
"DDDDDDDDDDDDDDD"
"DDDDDDDDDDDDDDD"
"DDD...DDD.DD.DD"
"DD.DDDDDD.DD.DD"
"DD.DDDDDD.DD.DD"
"DDD..DDDD....DD"
"DDDDD.DDD.DD.DD"
"DDDDD.DDD.DD.DD"
"DD...DDDD.DD.DD"
"DDDDDDDDDDDDDDD"
"DDDDDDDDDDD.DDD"
"DDDDDDDDDDD.DDD"
"DDDDDDDDDDD.DDD"
"DDDDDDDDDDD.DDD"
"DDDDDDDDDDDDDDD"
/* icon for state 7 */
"EEEEEEEEEEEEEEE"
"EEEEEEEEEEEEEEE"
"EE...EEEE.EE.EE"
"EE.EE.EEE.EE.EE"
"EE.EE.EEE.EE.EE"
"EE...EEEE....EE"
"EE.E.EEEE.EE.EE"
"EE.EE.EEE.EE.EE"
"EE.EE.EEE.EE.EE"
"EEEEEEEEEEEEEEE"
"EEEEEEEEEE...EE"
"EEEEEEEEEE.E.EE"
"EEEEEEEEEE.E.EE"
"EEEEEEEEEE...EE"
"EEEEEEEEEEEEEEE"
/* icon for state 8 */
"EEEEEEEEEEEEEEE"
"EEEEEEEEEEEEEEE"
"EE...EEEE.EE.EE"
"EE.EE.EEE.EE.EE"
"EE.EE.EEE.EE.EE"
"EE...EEEE....EE"
"EE.E.EEEE.EE.EE"
"EE.EE.EEE.EE.EE"
"EE.EE.EEE.EE.EE"
"EEEEEEEEEEEEEEE"
"EEEEEEEEEEE.EEE"
"EEEEEEEEEEE.EEE"
"EEEEEEEEEEE.EEE"
"EEEEEEEEEEE.EEE"
"EEEEEEEEEEEEEEE"
/* icon for state 9 */
"FFFFFFFFFFFFFFF"
"FFFFFFFFFFFFFFF"
"FFFFFGGGFFFFFFF"
"FFFFGFFFGFFFFFF"
"FFFFGFFFFFFFFFF"
"FFFFGFFFFFFFFFF"
"FFFFGFFFFFFFFFF"
"FFFFGFFFGFFFFFF"
"FFFFFGGGFFFFFFF"
"FFFFFFFFFFFFFFF"
"FFFFFFFFFFGGGFF"
"FFFFFFFFFFGFGFF"
"FFFFFFFFFFGFGFF"
"FFFFFFFFFFGGGFF"
"FFFFFFFFFFFFFFF"
/* icon for state 10 */
"FFFFFFFFFFFFFFF"
"FFFFFFFFFFFFFFF"
"FFFFFGGGFFFFFFF"
"FFFFGFFFGFFFFFF"
"FFFFGFFFFFFFFFF"
"FFFFGFFFFFFFFFF"
"FFFFGFFFFFFFFFF"
"FFFFGFFFGFFFFFF"
"FFFFFGGGFFFFFFF"
"FFFFFFFFFFFFFFF"
"FFFFFFFFFFFGFFF"
"FFFFFFFFFFFGFFF"
"FFFFFFFFFFFGFFF"
"FFFFFFFFFFFGFFF"
"FFFFFFFFFFFFFFF"
/* icon for state 11 */
"HHHHHHHHHHHHHHH"
"HHHHHHHHHHHHHHH"
"HHHHHGHHHGHHHHH"
"HHHHHGGHHGHHHHH"
"HHHHHGGGHGHHHHH"
"HHHHHGHGGGHHHHH"
"HHHHHGHHGGHHHHH"
"HHHHHGHHHGHHHHH"
"HHHHHGHHHGHHHHH"
"HHHHHHHHHHHHHHH"
"HHHHHHHHHHHHHHH"
"HHHHHHHHHHHHHHH"
"HHHHHHHHHHHHHHH"
"HHHHHHHHHHHHHHH"
"HHHHHHHHHHHHHHH"
/* icon for state 12 */
"IIIIIIIIIIIIIII"
"IIIIIIIIIIIIIII"
"IIIIIGIIIIIIIII"
"IIIIIGIIIIIIIII"
"IIIIIGIIIIIIIII"
"IIIIIGIIIIIIIII"
"IIIIIGIIIIIIIII"
"IIIIIGIIIIIIIII"
"IIIIIGGGGGIIIII"
"IIIIIIIIIIIIIII"
"IIIIIIIIIIIIIII"
"IIIIIIIIIIIIIII"
"IIIIIIIIIIIIIII"
"IIIIIIIIIIIIIII"
"IIIIIIIIIIIIIII"
/* icon for state 13 */
"JJJJJJJJJJJJJJJ"
"JJJJJJJJJJJJJJJ"
"JJJJJGGGGJJJJJJ"
"JJJJJGJJJGJJJJJ"
"JJJJJGJJJGJJJJJ"
"JJJJJGGGGJJJJJJ"
"JJJJJGJJGJJJJJJ"
"JJJJJGJJJGJJJJJ"
"JJJJJGJJJGJJJJJ"
"JJJJJJJJJJJJJJJ"
"JJJJJJJJJJJJJJJ"
"JJJJJJJJJJJJJJJ"
"JJJJJJJJJJJJJJJ"
"JJJJJJJJJJJJJJJ"
"JJJJJJJJJJJJJJJ"
/* icon for state 14 */
"KKKKKKKKKKKKKKK"
"KKKKKKKKKKKKKKK"
"KKKKKGGGGGKKKKK"
"KKKKKGKKKKKKKKK"
"KKKKKGKKKKKKKKK"
"KKKKKGGGGKKKKKK"
"KKKKKGKKKKKKKKK"
"KKKKKGKKKKKKKKK"
"KKKKKGKKKKKKKKK"
"KKKKKKKKKKKKKKK"
"KKKKKKKKKKKKKKK"
"KKKKKKKKKKKKKKK"
"KKKKKKKKKKKKKKK"
"KKKKKKKKKKKKKKK"
"KKKKKKKKKKKKKKK"
/* icon for state 15 */
"..............."
"..............."
".......L......."
"......L.L......"
".....L...L....."
".....LLLLL....."
".....L...L....."
".....L...L....."
".....L...L....."
"..............."
"..............."
"..............."
"..............."
"..............."
"..............."
/* icon for state 16 */
"..............."
"..............."
"..............."
".....ORGRO....."
"....PGGGGGP...."
"...OGGGGGGGO..."
"...RGGGGGGGR..."
"...GGGGGGGGG..."
"...RGGGGGGGR..."
"...OGGGGGGGO..."
"....PGGGGGP...."
".....ORGRO....."
"..............."
"..............."
"..............."
/* icon for state 17 */
"QQQQQQQQQQQQQQQ"
"QQQQQQQQQQQQQQQ"
"QQQQQQQQQQQQQQQ"
"QQQQQQQQQQQQQQQ"
"QQQQQQQQQQQQQQQ"
"QQQQQQQQQQQQQQQ"
"QQQQQQQQQQQQQQQ"
"QQQQQQQQQQQQQQQ"
"QQQQQQQQQQQQQQQ"
"QQQQQQQQQQQQQQQ"
"QQQQQQQQQQQQQQQ"
"QQQQQQQQQQQQQQQ"
"QQQQQQQQQQQQQQQ"
"QQQQQQQQQQQQQQQ"
"QQQQQQQQQQQQQQQ"
XPM
/* width height num_colors chars_per_pixel */
"7 119 19 1"
/* colors */
"A c #FFFF00"
". c #000000"
"C c #FF0000"
"D c #00FFFF"
"E c #00FF00"
"F c #4B0082"
"G c #FFFFFF"
"H c #800000"
"I c #0000FF"
"J c #008080"
"K c #808000"
"L c #8B4513"
"M c #606060"
"N c #E0E0E0"
"O c #404040"
"P c #808080"
"Q c #696969"
"R c #C0C0C0"
"S c #A0A0A0"
/* icon for state 1 */
"AAAAAAA"
"AAAAAAA"
"AAAAAAA"
"AAAAAAA"
"AAAAAAA"
"AAAAAAA"
"AAAAAAA"
/* icon for state 2 */
"AAAAAAA"
"AAAAAAA"
"AAAAAAA"
"AAAAAAA"
"AAAAAAA"
"AAAAAAA"
"AAAAAAA"
/* icon for state 3 */
"CCCCCCC"
"C.....C"
"CCC.CCC"
"CCC.CCC"
"CCC.CCC"
"CCC.CCC"
"CCCCCCC"
/* icon for state 4 */
"CCCCCCC"
"C.....C"
"CCC.CCC"
"CCC.CCC"
"CCC.CCC"
"CCC.CCC"
"CCCCCCC"
/* icon for state 5 */
"DDDDDDD"
"DD.D.DD"
"DD.D.DD"
"DD...DD"
"DD.D.DD"
"DD.D.DD"
"DDDDDDD"
/* icon for state 6 */
"DDDDDDD"
"DD.D.DD"
"DD.D.DD"
"DD...DD"
"DD.D.DD"
"DD.D.DD"
"DDDDDDD"
/* icon for state 7 */
"EEEEEEE"
"EE.E.EE"
"EE.E.EE"
"EE...EE"
"EE.E.EE"
"EE.E.EE"
"EEEEEEE"
/* icon for state 8 */
"EEEEEEE"
"EE.E.EE"
"EE.E.EE"
"EE...EE"
"EE.E.EE"
"EE.E.EE"
"EEEEEEE"
/* icon for state 9 */
"FFFFFFF"
"FFGGGFF"
"FFGFFFF"
"FFGFFFF"
"FFGFFFF"
"FFGGGFF"
"FFFFFFF"
/* icon for state 10 */
"FFFFFFF"
"FFGGGFF"
"FFGFFFF"
"FFGFFFF"
"FFGFFFF"
"FFGGGFF"
"FFFFFFF"
/* icon for state 11 */
"HHHHHHH"
"HGHHHGH"
"HGGHHGH"
"HGHGHGH"
"HGHHGGH"
"HGHHHGH"
"HHHHHHH"
/* icon for state 12 */
"IIIIIII"
"IIGIIII"
"IIGIIII"
"IIGIIII"
"IIGIIII"
"IIGGGII"
"IIIIIII"
/* icon for state 13 */
"JJJJJJJ"
"JJGGGJJ"
"JJGJJGJ"
"JJGGGJJ"
"JJGJGJJ"
"JJGJJGJ"
"JJJJJJJ"
/* icon for state 14 */
"KKKKKKK"
"KKGGGKK"
"KKGKKKK"
"KKGGGKK"
"KKGKKKK"
"KKGKKKK"
"KKKKKKK"
/* icon for state 15 */
"......."
"...L..."
"..L.L.."
".L...L."
".LLLLL."
".L...L."
"......."
/* icon for state 16 */
"......."
"..SNS.."
".SGGGS."
".NGGGN."
".SGGGS."
"..SNS.."
"......."
/* icon for state 17 */
"QQQQQQQ"
"QQQQQQQ"
"QQQQQQQ"
"QQQQQQQ"
"QQQQQQQ"
"QQQQQQQ"
"QQQQQQQ"
Code: Select all
x = 8, y = 5, rule = Snakes
ADEBA$I3.CE$K4.B$5.AD$6.FB!
Then I came across this (5,2)c/21 snake.
Code: Select all
x = 3, y = 5, rule = Snakes
.AB$.F$.D$.A$KJ!
Post any interesting things in this rule here!
A RF (reflectorless flipping) snake
Code: Select all
x = 6, y = 3, rule = Snakes
F$DABF.K$3.CBI!
Code: Select all
x = 11, y = 3, rule = Snakes
.DBAED$BE3.2A$6.FDAIK!