World number six and 20-time Grand Slam champion Rafael Nadal saw off Denis Shapovalov in a thriller that lasted for…