@Override
        public boolean equals(Object o) {
            if (this == o) return true;
            if (o == null || getClass() != o.getClass()) return false;
            IndexRange that = (IndexRange) o;
            if (empty != that.empty) return false;
            if (fromIndex != that.fromIndex) return false;
            if (toIndex != that.toIndex) return false;
            return true;
        }