code: private E unlinkLast(Node<E> l) {
          // assert l == last && l != null;
          final E element = l.item;
          final Node<E> prev = l.prev;
          l.item = null;
          l.prev = null; // help GC
          last = prev;
          if (prev == null)
              first = null;
          else
              prev.next = null;
          size--;
          modCount++;
          return element;
      }
docs: Unlinks non-null last node l.