India's Virat Kohli equalled Sachin Tendulkar's record of 49 one-day international hundreds as unbeaten World Cup hosts India thrashed fellow semi-finalists South Africa by 243 runs in a pool match on Sunday.
Kohli, on his 35th birthday, got to the landmark in 119 balls, including 10 fours, at Kolkata's Eden Gardens.
It had taken him 277 innings to score 49 hundreds at this level compared to the 438 required by fellow India 2011 World Cup-winner Tendulkar.
Kohli's 101 not out was the centrepiece of India's 326-5 before their powerful attack cleaned up as Rohit Sharma's men made it eight wins out of eight at the tournament.
Together with Shreyas Iyer (77) he shared a third-wicket partnership of 134 after India captain Rohit had won the toss.
India, fresh from dismissing Sri Lanka for just 55 -- the lowest total by any Test side at a World Cup -- during a 302-run rout of the 1996 champions, sparked another collapse as South Africa were dismissed for 83.
It was the Proteas' second-lowest ODI total, behind their 69 against Australia at Sydney in 1993 and lowest at a World Cup.
Left-arm spinner Ravindra Jadeja did the bulk of the damage with 5-33, with India now assured of finishing the pool phase in top spot, while South Africa lower-order batsman Marco Jansen's 14 was the innings' top score.
This was South Africa's second pool defeat following a stunning loss to non-Test side Netherlands and the gap between the top two teams on Sunday was almost as much of a shock as that reverse.
Kohli, now averaging more than 108 in the World Cup, said during the innings break: "Every opportunity to play for India is a big one, to be able to ton up on my birthday is the stuff of dreams. It is something you dream about as a child."
- Tendulkar tribute -
Tendulkar led the tributes to Kohli, the retired India great writing on X, formerly Twitter: "Well played Virat. It took me 365 days to go from 49 to 50 (years old) earlier this year. I hope you go from 49 to 50 and break my record in the next few days. Congratulations."
India, then had South Africa's Quinton de Kock, the tournament's leading run-scorer, out for just five when he played onto Mohammed Siraj before Jadeja bowled Proteas captain Temba Bavuma.
Mohammed Shami, coming off a superb five-wicket haul against Sri Lanka, struck with just his fifth ball when Aiden Markram was caught behind off a brilliant delivery that angled in and jagged away to take the outside edge.
Jadeja had dangerman Heinrich Klaasen lef before and 40-4 became 40-5 when paceman Shami overturned another original not out decision as Rassie van der Dussen was lbw for 13.
Earlier, left-arm quick Jansen, whose first over cost 17 runs, returned expensive figures of 1-94 in 9.4 overs.
Rohit launched the innings in style with a typically brisk 40 before he was well caught by Bavuma at mid-off.
Kohli carried on from where left off in his 88 against Sri Lanla with successive fours off fast bowler Kagiso Rabada.
But Keshav Maharaj, struck with just his third ball, the left-arm spinner bowling Shubman Gill (23) with a classic delivery that pitched just outside leg and turned to clip the off-stump
Kohli and Iyer, who made a blistering 82 against Sri Lanka, rebuilt in patient fashion before the accelerating Iyer holed out off Ngidi.
But with a capacity crowd willing him on as thousands in Eden Gardens held up lights against the night sky, the composed Kohli's single off Rabada saw him to a fine hundred.