use genericity and avoid warnings