public boolean changeId(int index, int value) {

      if (index < arraySize) {
        ref.set(index, value);
        lastChangeValue.set(new ChangedValue(index, value));
        //                maxIndex.updateMax(nextId);
        //                updateIndex.offer(nextId);
        //                logger.debug("nextId:{}", nextId);
        return true;
      } else {
        return false;
      }
    }
    public boolean nextId() {

      int nextId = this.nextId.getAndIncrement();
      if (nextId < arraySize) {
        ref.set(nextId, nextId);
        afterLast.set(nextId);
        //                maxIndex.updateMax(nextId);
        //                updateIndex.offer(nextId);
        //                logger.debug("nextId:{}", nextId);
        return true;
      } else {
        return false;
      }
    }