### BEGIN SOLUTION
def neutralise():
pose()
prend()
avance()
def pose_derriere():
droite()
droite()
pose()
droite()
droite()
def avance_toiles_cailloux():
while( regarde() != Mur and regarde() != Sortie):
if( regarde() == Toile):
neutralise()
elif( regarde() == Caillou):
pose_derriere()
prend()
else:
avance()
debut()
avance()
avance()
gauche()
avance()
while( regarde() != Caillou):
droite()
droite()
avance()
gauche()
avance()
avance()
prend()
droite()
droite()
avance()
avance()
gauche()
while( regarde() == Vide):
avance()
neutralise()
pose_derriere()
avance()
gauche()
avance()
avance()
prend()
avance()
avance()
gauche()
neutralise()
pose_derriere()
avance()
prend()
avance_toiles_cailloux()
pose_derriere()
droite()
avance()
avance()
droite()
prend()
avance_toiles_cailloux()
gauche()
avance()
avance()
gauche()
avance_toiles_cailloux()
pose_derriere()
ouvre()
### END SOLUTION