boolean (LongRangeSet other) { if (other instanceof Point) { return contains(((Point)other).myValue); } if (other instanceof ModRange modRange) { int lcm = lcm(modRange.myMod); if (lcm <= Long.SIZE && (modRange.widenBits(lcm) & widenBits(lcm)) == 0) return false; } long[] otherRanges = other.asRangeArray(); for (int i = 0; i < otherRanges.length && otherRanges[i] <= myTo; i += 2) { if (myTo >= otherRanges[i] && myFrom <= otherRanges[i + 1] && !modRange(otherRanges[i], otherRanges[i + 1], myMod, myBits).isEmpty()) { return true; } } return false; }