@SuppressWarnings("unchecked")
	public static Vector<Block>[] organizeBlocksByStartIndex(Vector<Block> unorganized, Solver s) {
		//set up the array of vectors
		Vector<Block> organized[] = (Vector<Block>[]) new Vector<?>[s.TARGET_STRING.length()];
		//initialize all the vectors in the array
		for(int i = 0; i < organized.length; i++) {
			organized[i] = new Vector<Block>();
		}
		
		//fill them up
		for(Block b : unorganized) {
			//add b into the last slot of the column for it's starting index
			organized[b.getStartIndex()].add(b);
		}
		
		return organized;
	}