
public_findDistance :- 
        write('% public_findDistance'),nl,
	findall(L, findDistance(L), Out), 
	write(Out), nl.

public_solve :- 
        write('% public_solve'),nl,
	findall(true, solve, Out), 
	write(Out), nl.

maze(4,0,3,0,0).
cell(0,0,[d],[0.391538986557049]).
cell(1,0,[r,d],[16.597130417636, 0.889878639213553]).
cell(2,0,[l,d],[0.011123208182191, 18.6496954092342]).
cell(3,0,[],[]).
cell(0,1,[u,r],[63.1258159853081, 3.14882640637611]).
cell(1,1,[u,l,r,d],[0.577082416767899, 11.2788559044107, 0.0116108917113176, 25.6907194043197]).
cell(2,1,[u,l,r,d],[89.8399554017928, 0.120311605902415, 0.0687987167581341, 198.151088713489]).
cell(3,1,[l,d],[0.0114526228490019, 152.662532290366]).
cell(0,2,[r,d],[0.0148854629087619, 0.019301544005463]).
cell(1,2,[u,l,r],[9.93466159987408, 0.199913563972552, 1.26393492879008]).
cell(2,2,[u,l,d],[12.3336316807166, 1.59269860596813, 0.680879328533728]).
cell(3,2,[u],[18.8277117544323]).
cell(0,3,[u],[15.6415340291405]).
cell(1,3,[],[]).
cell(2,3,[u,r],[0.216152697975287, 0.0138637250041849]).
cell(3,3,[l],[0.0113867473179591]).
path('path1',0,3,[u,r,u,l,u]).
path('path2',0,3,[u,r,r,u,l,l,u]).

