finished dlist module