 		{
 			pidx = idx + NUM_THREADS * 2;
 		}
-
+		
 		ushort start, end;
 		uint permutation = permutations[pidx];
 		float error = evalPermutation4(colors, permutation, &start, &end);

		}
	}

	// unroll last 6 steps 
	if (idx <= 32)
	{
		if (errors[idx + 32] < errors[idx]) {

////////////////////////////////////////////////////////////////////////////////
// Sort colors
////////////////////////////////////////////////////////////////////////////////
__device__ void sortColors(float * values, int * cmp)
{
	int tid = threadIdx.x;

