code: public void insertBlock(AbstractBaseDTNode<I, D> blockRoot) {
          blockRoot.removeFromBlockList();
  
          blockRoot.setNextElement(next);
          if (getNextElement() != null) {
              next.setPrevElement(blockRoot);
          }
          blockRoot.setPrevElement(this);
          next = blockRoot;
      }
docs: Inserts a block into the list. Currently, the block is inserted at the head of the list. However, callers should
  not rely on this.
  
  @param blockRoot
  the root node of the block to be inserted