code: int insert(long start, long end, int n) {
          splitAt(start);
          splitAt(end);
  
          int peak = 0;
          for (Map.Entry<Long, int[]> e : data.tailMap(start).headMap(end).entrySet()) {
              peak = max(peak, e.getValue()[0] += n);
          }
          return peak;
      }
docs: increases q(t) by n for t in [start,end).
  
  @return peak value of q(t) in this range as a result of addition.