Why hardcode here instead of X.dtype?