let rec even_only = function
li -> if is_empty_list (li)
then empty_list () (* ----- li as well ----- *)
else if abs (head (li)) mod 2 = 0
then cons_list (head (li), even_only (tail (li)))
else even_only (tail (li))