code: public int getAndSetLo(int lo) {
          while (true) {
              long encoded = get();
              long update = encodeLo(encoded, lo);
              if (compareAndSet(encoded, update))
                  return getLo(encoded);
          }
      }
docs: Atomically sets the lo value without changing the hi value.
  
  @param lo the new lo value
  @return the previous lo value