first_last(L,R):- length(NL,1),append(NL,_,L),member(R,NL),rev_list(L,R).
rev_list(L,R):- reverse(L,RL),length(NL,1),append(NL,_,RL),member(R,NL).
