added reverse SLL