first(H, [H | _]). rest(R, [_ | R]).