public class ListNode {
public ListNode next;
public A val;
ListNode(ListNode n, A v) {
next=n;
val=v;
}
boolean contains(A v) {
for (ListNode l=this; l!=null; l=l.next) {
if (v==null) {
if (v==l.val) {
return true;
}
} else {
if (v.equals(l.val)) {
return true;
}
}
}
return false;
}
}