doubly linked in place