private static void hashFft16(double[] arr) {
	  double x,y;
	  
	  x = arr[0]; y = arr[8]; arr[0] = x + y; arr[8] = x - y;
	  x = arr[1]; y = arr[9]; arr[1] = x + y; arr[9] = x - y;
	  x = arr[2]; y = arr[10]; arr[2] = x + y; arr[10] = x - y;
	  x = arr[3]; y = arr[11]; arr[3] = x + y; arr[11] = x - y;
	  x = arr[4]; y = arr[12]; arr[4] = x + y; arr[12] = x - y;
	  x = arr[5]; y = arr[13]; arr[5] = x + y; arr[13] = x - y;
	  x = arr[6]; y = arr[14]; arr[6] = x + y; arr[14] = x - y;
	  x = arr[7]; y = arr[15]; arr[7] = x + y; arr[15] = x - y;

	  x = arr[0]; y = arr[4]; arr[0] = x + y; arr[4] = x - y;
	  x = arr[1]; y = arr[5]; arr[1] = x + y; arr[5] = x - y;
	  x = arr[2]; y = arr[6]; arr[2] = x + y; arr[6] = x - y;
	  x = arr[3]; y = arr[7]; arr[3] = x + y; arr[7] = x - y;
	  x = arr[8]; y = arr[12]; arr[8] = x + y; arr[12] = x - y;
	  x = arr[9]; y = arr[13]; arr[9] = x + y; arr[13] = x - y;
	  x = arr[10]; y = arr[14]; arr[10] = x + y; arr[14] = x - y;
	  x = arr[11]; y = arr[15]; arr[11] = x + y; arr[15] = x - y;

	  x = arr[0]; y = arr[2]; arr[0] = x + y; arr[2] = x - y;
	  x = arr[1]; y = arr[3]; arr[1] = x + y; arr[3] = x - y;
	  x = arr[4]; y = arr[6]; arr[4] = x + y; arr[6] = x - y;
	  x = arr[5]; y = arr[7]; arr[5] = x + y; arr[7] = x - y;
	  x = arr[8]; y = arr[10]; arr[8] = x + y; arr[10] = x - y;
	  x = arr[9]; y = arr[11]; arr[9] = x + y; arr[11] = x - y;
	  x = arr[12]; y = arr[14]; arr[12] = x + y; arr[14] = x - y;
	  x = arr[13]; y = arr[15]; arr[13] = x + y; arr[15] = x - y;

	  x = arr[0]; y = arr[1]; arr[0] = x + y; arr[1] = x - y;
	  x = arr[2]; y = arr[3]; arr[2] = x + y; arr[3] = x - y;
	  x = arr[4]; y = arr[5]; arr[4] = x + y; arr[5] = x - y;
	  x = arr[6]; y = arr[7]; arr[6] = x + y; arr[7] = x - y;
	  x = arr[8]; y = arr[9]; arr[8] = x + y; arr[9] = x - y;
	  x = arr[10]; y = arr[11]; arr[10] = x + y; arr[11] = x - y;
	  x = arr[12]; y = arr[13]; arr[12] = x + y; arr[13] = x - y;
	  x = arr[14]; y = arr[15]; arr[14] = x + y; arr[15] = x - y;
	}
Raw Fast Fourier Transform on 16 wide array of doubles
@param arr is the 16-long array
Ghidra/Extensions/BSimElasticPlugin/src/org/elasticsearch/plugin/analysis/lsh/LSHBinner.java