import java.util.*;

public class RepairDroid
{
    public static final String INITIAL_INPUT = Integer.toString(DroidMovement.NORTH);

    public RepairDroid (Vector<String> instructions, boolean debug)
    {
        _debug = debug;
        _theComputer = new Intcode(instructions, INITIAL_INPUT, _debug);
        _location = new Coordinate(0, 0);
        _visitedLocations = new Vector<Coordinate>();

        _visitedLocations.add(_location);
    }

    public final int moveToOxygenStation ()
    {
        int numberOfSteps = 0;
        boolean found = false;

        while (!found)
        {

        }

        return numberOfSteps;
    }

    public void printGrid ()
    {
        
    }

    private boolean _debug;
    private Intcode _theComputer;
    private Coordinate _location;
    private Vector<Coordinate> _visitedLocations;
}
@@ -526,24 +526,25 @@
 ps = 0;%0A
+%0A
         
 boolean 
@@ -539,70 +539,121 @@
     
-boolean found = false;%0A
+// create a map first!%0A        %0A        return numberOfSteps;
 %0A    
+%7D%0A%0A
     
-while (!found
+public void printGrid (
 )%0A    
+%7B%0A
     
-%7B%0A%0A
     
+%0A
     
@@ -663,84 +663,274 @@
     
-    return numberOfSteps
+private void recursiveSearch (Coordinate from)%0A    %7B%0A        boolean found = false
 ;%0A
+%0A
     
-%7D%0A%0A    public void printGrid ()%0A    %7B%0A        
+    /*%0A         * This is NOT right at the moment. Braindump and experiment through code!%0A         */%0A%0A        while (!found)%0A        %7B%0A%0A        %7D%0A%0A        return numberOfSteps;
 %0A   

Update RepairDroid.java