Eliminate thrust::iterator_traits