experimenting with generics
common ancestor