South Africa secured their place in the World Cup quarter-finals with an emphatic 66-7 victory over 14-man Canada in Kobe.
Canada, who conceded 48 points to Italy and 63 to New Zealand in their opening matches, again found the going tough in Pool B as they shipped 10 tries to the dominant Springboks.
Northampton's Cobus Reinach helped himself to a hat-trick in the opening 20 minutes while influential fly-half Elton Jantjies kicked his way to 16 points.
Canada, who trailed 47-0 at the break, also had to play more than half the game with a man less after Josh Larsen was sent off for a shoulder charge into the head of Thomas Du Toit.
South Africa made 13 changes for the game but there was no problem with their cohesion as they raced in front with a try after just two minutes.
Damien De Allende, one of only two players retained in the starting line-up, profited from a break by RG Snyman to touch down and within three minutes S'busiso Nikosi went over in the corner for the second.
Reniach claimed his first after nine minutes as he gathered his own kick to cross and grabbed another following more powerful running by Snyman.
He then sprinted half the length of the field to claim his third and South Africa scored again when Warrick Gelant weaved his way through the Canucks defence.
Canada's night got even worse when Larsen was sent off before the break following a foul play review by the TMO and they were breached again when Frans Steyn crashed over from close range.
The Springboks made a slow start to the second half and Canada registered a consolation when Jeff Hassler drove to the line and Matt Heaton forced his way over.
Normal service was soon resumed, however, as veteran hooker Schalk Brits claimed a well-worked try and Damian Willemse - only recently drafted into the squad as an injury replacement - went over from a scrum.
Frans Malherbe powered through the defence for South Africa's 10th try eight minutes from time.
South Africa v Canada - Match Highlights
South Africa v Canada - Match Stats
South Africa: (47) 66
Try: de Allende (3'), Nkosi (6'), Reinach (10', 18', 21'), Gelant (28'), Steyn (40'), Brits (55'), Willemse (66'), Malherbe (73')
Conversion: Jantjies (3', 12', 20', 22', 29', 41'+1, 56', 68')
Canada: (0) 7
Try: Heaton (46')
Conversion: Nelson (48')
Red Card: Larsen (36')
Man of the match: RG Snyman (South Africa)