public TileColor getLeft(TileColor top){
		TileColor[] whiteL = {red,blue,orange,green};
		TileColor[] blueL = {red,yellow,orange,white};
		TileColor[] redL = {blue,white,green,yellow};
		TileColor[] L = {};
		if(top.equals(white)){
			L = whiteL;
		} else if(top.equals(blue)){
			L = blueL;
		} else if(top.equals(red)){
			L = redL;
		} else if(top.equals(yellow)){
			L = flip(whiteL);
		} else if(top.equals(green)){
			L = flip(blueL);
		} else if(top.equals(orange)){
			L = flip(redL);
		}
		int i = find(this,L) - 1;
		i = i == -1 ? 3 : i;
		if(i == -2) return null;
		return L[i];
	}