protected static void initMPermMoveConj() { CubieCube c = new CubieCube(); CubieCube d = new CubieCube(); for (int i = 0; i < N_MPERM; i++) { c.setMPerm(i); for (int j = 0; j < N_MOVES2; j++) { CubieCube.EdgeMult(c, CubieCube.moveCube[Util.ud2std[j]], d); MPermMove[i, j] = (char)d.getMPerm(); } for (int j = 0; j < 16; j++) { CubieCube.EdgeConjugate(c, CubieCube.SymInv[j], d); MPermConj[i, j] = (char)d.getMPerm(); } } }