public ArrayList<Node> successors()
	{
		ArrayList<Node> temp = new ArrayList<Node>();
		State left = state.goLeft();
		State up = state.goUp();
		State right = state.goRight();
		State down = state.goDown();

		if(up != null)
		{
			temp.add(new Node(up, this, cost+1, Grid.Direction.UP));
		}

		if(down != null)
		{
			temp.add(new Node(down, this, cost+1, Grid.Direction.DOWN));
		}

		if(left != null)
		{
			temp.add(new Node(left, this, cost+1, Grid.Direction.LEFT));
		}
		if(right != null)
		{
			temp.add(new Node(right, this, cost+1, Grid.Direction.RIGHT));
		}
		return temp;

	
	}