Begin adding generics