started type inference