public LinkedList<String> path() {
			LinkedList<String> out = new LinkedList<String>();
			State s = prev;
			int oldOrientation = orientation;
			while (s != null) {
				if (oldOrientation != s.orientation) {
					if (oldOrientation == World.NORTH && s.orientation == World.WEST) {
						out.add("r");
					} else if (oldOrientation == World.WEST && s.orientation == World.NORTH) {
						out.add("l");
					} else if (oldOrientation > s.orientation) {
						out.add("r");
					} else {
						out.add("l");
					}
				} else {
					out.add("f");
				}
				oldOrientation = s.orientation;
				s = s.prev;
			}
			return out;
		}