default boolean setShreds(@NotNull Place newShreds) {
    synchronized (getLock()) {
      Place oldShreds = getDocument().getShreds();
      // try to reuse shreds, otherwise there are too many range markers disposals/re-creations
      if (same(oldShreds, newShreds)) {
        return false;
      }
      getDocument().setShreds(newShreds);
      return true;
    }
  }
default boolean setShreds(@NotNull Place newShreds)