long (int targetMod) { assert targetMod <= Long.SIZE && targetMod % myMod == 0; long result = myBits; for (int shift = targetMod - myMod; shift > 0; shift -= myMod) { result |= myBits << shift; } return result; }