__inter_list__even_and_tree__3n__plus__2(nil).
__inter_even_and_zero__mod__3(o).
__inter_even_and_zero__mod__3(s(X1)) :- __inter_odd_and_two__mod__3(X1).
__inter_odd_and_zero__mod__3(s(X1)) :- __inter_even_and_two__mod__3(X1).
__inter_even_and_one__mod__3(s(X1)) :- __inter_odd_and_zero__mod__3(X1).
__inter_odd_and_one__mod__3(s(X1)) :- __inter_even_and_zero__mod__3(X1).
__inter_even_and_two__mod__3(s(X1)) :- __inter_odd_and_one__mod__3(X1).
__inter_odd_and_two__mod__3(s(X1)) :- __inter_even_and_one__mod__3(X1).
tree_3n_plus_2(cons(X1,X2)) :- __inter_list__even_and_tree__3n__plus__2(X1), __inter_list__even_and_tree__3n__plus__2(X2).
tree_3n_plus_2(cons(X1,X2)) :- tree_3n_plus_2(X1), __inter_list__even_and_tree__3n__plus__2(X2).
tree_3n_plus_2(cons(X1,X2)) :- __inter_list__even_and_tree__3n__plus__2(X1), tree_3n_plus_2(X2).
list_even(cons(X1,X2)) :- __inter_even_and_zero__mod__3(X1), __inter_list__even_and_tree__3n__plus__2(X2).
__inter_list__even_and_tree__3n__plus__2(cons(X1,X2)) :- __inter_even_and_two__mod__3(X1), __inter_list__even_and_tree__3n__plus__2(X2).
tree_3n_plus_2(cons(X1,X2)) :- __inter_odd_and_two__mod__3(X1), __inter_odd_and_two__mod__3(X2).
list_even(cons(X1,X2)) :- __inter_even_and_zero__mod__3(X1), list_even(X2).
tree_3n_plus_2(cons(X1,X2)) :- __inter_list__even_and_tree__3n__plus__2(X1), __inter_even_and_two__mod__3(X2).
list_even(cons(X1,X2)) :- __inter_even_and_two__mod__3(X1), list_even(X2).
list_even(cons(X1,X2)) :- __inter_even_and_one__mod__3(X1), list_even(X2).
tree_3n_plus_2(cons(X1,X2)) :- tree_3n_plus_2(X1), tree_3n_plus_2(X2).
tree_3n_plus_2(cons(X1,X2)) :- tree_3n_plus_2(X1), __inter_odd_and_two__mod__3(X2).
tree_3n_plus_2(cons(X1,X2)) :- __inter_odd_and_two__mod__3(X1), __inter_list__even_and_tree__3n__plus__2(X2).
tree_3n_plus_2(cons(X1,X2)) :- __inter_even_and_two__mod__3(X1), __inter_odd_and_two__mod__3(X2).
tree_3n_plus_2(cons(X1,X2)) :- __inter_odd_and_two__mod__3(X1), __inter_even_and_two__mod__3(X2).
tree_3n_plus_2(cons(X1,X2)) :- __inter_list__even_and_tree__3n__plus__2(X1), __inter_odd_and_two__mod__3(X2).
list_even(cons(X1,X2)) :- __inter_even_and_one__mod__3(X1), __inter_list__even_and_tree__3n__plus__2(X2).
tree_3n_plus_2(cons(X1,X2)) :- __inter_even_and_two__mod__3(X1), tree_3n_plus_2(X2).
tree_3n_plus_2(cons(X1,X2)) :- __inter_odd_and_two__mod__3(X1), tree_3n_plus_2(X2).
tree_3n_plus_2(cons(X1,X2)) :- __inter_even_and_two__mod__3(X1), __inter_even_and_two__mod__3(X2).
tree_3n_plus_2(cons(X1,X2)) :- tree_3n_plus_2(X1), __inter_even_and_two__mod__3(X2).
