implemented list and new functions