Added generic types code