code: public Range move(int offset) {
          if (offset == 0)
              return this;
          return new Range(lower + offset, upper + offset, reversed);
      }
docs: Returns range moved using provided offset (e.g. [lower + offset, upper + offset, reversed])
  
  @param offset offset, can be negative
  @return range moved using provided offset