private static byte[][] InvShiftRows(byte[][] state) { 
		byte[] t = new byte[4]; 
		for (int r = 1; r < 4; r++) {
			for (int c = 0; c < Nb; c++) 
				t[(c + r)%Nb] = state[r][c];
			for (int c = 0; c < Nb; c++) 
				state[r][c] = t[c];
		}
	return state;
	}