# MazeSolver rule by Adam P. Goucher.
# Slightly modified by Andrew Trevorrow so that MazeSolver
# and MazeSolver2 can share the same starting patterns.
n_states:13
neighborhood:vonNeumann
symmetries:none
#State 0: Empty Space
#State 1: Wall
#State 2: Start
#State 3: Finish
#State 4: North arrow
#State 5: East arrow
#State 6: South arrow
#State 7: West arrow
#State 8: North Route
#State 9: East Route
#State 10: South Route
#State 11: West Route
#State 12: Drone
var a={0,1,2,3,4,5,6,7,8,9,10,11,12}
var b={0,1,2,3,4,5,6,7,8,9,10,11,12}
var c={0,1,2,3,4,5,6,7,8,9,10,11,12}
var S={2}
var F={3}
var D={12}
var j={S,4,5,6,7}
var k={S,D}
var l={S,8,9,10,11,D}
# empty cell becomes a drone
0,k,a,b,c,D
0,a,k,b,c,D
0,a,b,k,c,D
0,a,b,c,k,D
# drone becomes an arrow
D,j,a,b,c,4
D,a,j,b,c,5
D,a,b,j,c,6
D,a,b,c,j,7
# finish becomes initial route back to start
F,l,a,b,c,8
F,a,l,b,c,9
F,a,b,l,c,10
F,a,b,c,l,11
# backtracking: N arrow becomes N route, etc...
4,10,a,b,c,8
4,a,11,b,c,8
4,a,b,8,c,8
4,a,b,c,9,8
5,10,a,b,c,9
5,a,11,b,c,9
5,a,b,8,c,9
5,a,b,c,9,9
6,10,a,b,c,10
6,a,11,b,c,10
6,a,b,8,c,10
6,a,b,c,9,10
7,10,a,b,c,11
7,a,11,b,c,11
7,a,b,8,c,11
7,a,b,c,9,11