public void initializePart2(String[] args) {
		if(args.length < 2) { System.out.println("Invalid Arguments."); return; }

		Robots model;
		if(args[1].equals("map0")) {
			int[][] maze = {
				{ 0, 0, 0, 0, 0, 0, 0, 0 },
				{ 0, 3, 1, 1, 1, 1, 3, 0 },
				{ 0, 0, 0, 0, 0, 0, 0, 0 }
			};

			model = new Robots(maze);
			model.locations.put(model.createBLU()  , new Location(model, 1, 1));
			model.locations.put(model.createBlock(), new Location(model, 2, 1));
		}
		else if(args[1].equals("map1")) {
			int[][] maze = {
				{ 0, 0, 0, 0, 0, 0, 0, 0 },
				{ 0, 1, 1, 1, 1, 3, 3, 0 },
				{ 0, 0, 0, 0, 0, 0, 0, 0 }
			};

			model = new Robots(maze);
			model.locations.put(model.createBLU()  , new Location(model, 1, 1));
			model.locations.put(model.createBlock(), new Location(model, 2, 1));
		}
		else if(args[1].equals("map2")) {
			String filename = "assign/search/sokoban.blu2.map";
			int[][] maze = {
				{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
				{ 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0 },
				{ 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0 },
				{ 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0 },
				{ 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0 },
				{ 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0 },
				{ 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0 },
				{ 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0 },
				{ 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0 },
				{ 0, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 0 },
				{ 0, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 0 },
				{ 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0 },
				{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
			};

			model = new Robots(maze);
			model.locations.put(model.createBLU()  , new Location(model, 1, 1));
			model.locations.put(model.createBlock(), new Location(model, 2, 2));
		}
		else if(args[1].equals("map3")) {
			int[][] maze = {
				{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
				{ 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0 },
				{ 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0 },
				{ 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0 },
				{ 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 3, 0 },
				{ 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0 },
				{ 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 3, 0 },
				{ 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0 },
				{ 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0 },
				{ 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0 },
				{ 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0 },
				{ 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0 },
				{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
			};

			model = new Robots(maze);
			model.locations.put(model.createBLU()  , new Location(model, 1, 1));
			model.locations.put(model.createBlock(), new Location(model, 2, 2));
		}
		else if(args[1].equals("map4")) {
			int[][] maze = {
				{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
				{ 0, 1, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0 },
				{ 0, 1, 1, 1, 1, 1, 1, 0, 0, 0, 1, 0 },
				{ 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0 },
				{ 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0 },
				{ 0, 1, 0, 0, 0, 0, 1, 1, 1, 3, 1, 0 },
				{ 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0 },
				{ 0, 1, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0 },
				{ 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0 },
				{ 0, 1, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0 },
				{ 0, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 0 },
				{ 0, 1, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0 },
				{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
			};

			model = new Robots(maze);
			model.locations.put(model.createBLU()  , new Location(model, 1, 1));
			model.locations.put(model.createBlock(), new Location(model, 2, 2));
		}
		else { System.out.println("Invalid Map."); return; }

		Controller controller = new SequentialController(model);
		RobotsView view       = new RobotsView(model, controller);

		controller.bind(Robots.BLU.class, new SokobanAgentBLU());

		show(view);
	}