set generic types

set generic types