code: public final void set(int i, int newValue) {
          if (fullWidth) {
              array.set(i, newValue);
              return;
          }
  
          boolean success = false;
          int index = getIndex(i);
          int subIndex = getSubIndex(i);
          while (!success) {
              int prev = array.get(index);
              int next = pack(prev, newValue, subIndex);
              success = array.compareAndSet(index, prev, next);
          }
      }
docs: Sets an element to the given value
  
  @param i the index
  @param newValue the new value