worked on ll_from_end