Ugandan Stephen Kiprotich produced one of the biggest shocks of the London 2012 Olympic Games to win the men's marathon on The Mall on Sunday, claiming Uganda's first athletics gold for 40 years.