added list_append and other functions