 */
 void print_graph(const unsigned int n, const int * const G)
 {
+	int v1, v2;
 	FOR(v1, 0, n - 1)
 	{
 		FOR(v2, 0, n - 1) 

		{
			if (v1 + i < n && v2 + j < n )
			{
		                path = d[(v1 + i) * pitch + v2 + j];
		                predecessor = p[(v1 + i) * pitch + v2 + j];

				#pragma unroll
				FOR (k, 0, BLOCK_SIZE * THREAD_SIZE - 1)
				{
					newPath = primaryCol_d[ty + i][k] + primaryRow_d[k][tx + j];
					if (path > newPath)
					{
						path = newPath;
						predecessor = primaryRow_p[k][tx + j];
					}
				}
                		d[(v1 + i) * pitch + v2 + j] = path;
		                p[(v1 + i) * pitch + v2 + j] = predecessor;

			}
		}
	}


	if (pv1 < n && pv2 < n)
	{
		primary_d[ty][tx] = d[cell_primary];
		primary_p[ty][tx] = p[cell_primary];
	}
	else
	{
