Added generics to adapters