Support multiple types