+added CUDA code