public IntervalSet subtract(IntSet a) {if (a == null || a.isNil()) {return new IntervalSet(this);}if (a instanceof IntervalSet) {return subtract(this, (IntervalSet)a);}IntervalSet other = new IntervalSet();other.addAll(a);return subtract(this, other);}

public virtual Antlr4.Runtime.Misc.IntervalSet Subtract(IIntSet a){if (a == null || a.IsNil){return new Antlr4.Runtime.Misc.IntervalSet(this);}if (a is Antlr4.Runtime.Misc.IntervalSet){return Subtract(this, (Antlr4.Runtime.Misc.IntervalSet)a);}Antlr4.Runtime.Misc.IntervalSet other = new Antlr4.Runtime.Misc.IntervalSet();other.AddAll(a);return Subtract(this, other);}
