
Jobe Bellingham started his second game since moving to Dortmund from Sunderland
Borussia Dortmund narrowly beat South Korean side Ulsan HD in a lacklustre encounter to qualify for the last 16 of the Club World Cup as Group F winners.
Niko Kovac's side came into the final group game in Cincinnati knowing a point would take them through to the knockout stage.
In front of thousands of empty seats at the Bank of America Stadium, Jobe Bellingham registered his first assist in Dortmund colours when he teed up Daniel Svensson to tuck away the only goal of the game.
Bellingham was inches away from scoring his second goal since his move from Sunderland, but his sweetly-struck volley rose over the bar.
Wing-back Yan Couto thought he had made sure of the success for the German side late on, but Ulsan goalkeeper Jo Hyeon-woo produced a stunning fingertip save.
Elsewhere in Group F, Brazil's Fluminense also reached the knockout stage in second spot after a goalless draw with South African side Mamelodi Sundowns, who finished third in the table.
What's the main talking point?
Dortmund started the game with such intensity and looked as though they would go into the half-time break at least a couple of goals ahead, but their finishing was off.
Before being withdrawn in the second half, striker Serhou Guirassy had seven shots with four on target but failed to find the back of the net. Bellingham could only force Ulsan keeper Hyeon-woo into action once as the South Korean side battled to keep them at bay.
If Dortmund are to progress beyond the last 16 in this competition, they will have to improve their finishing.
The standout stats
The scoreline does not do Dortmund's attacking dominance justice as they fired in 28 shots to Ulsan's three.
Despite scoring just the once, the German side recorded an xG of 3.35 and had 60% of the possession.
Which players stood out?
Despite being on the losing team, Ulsan goalkeeper Hyeon-woo was in superb form with eight saves in the match.
Seven of those stops came in a first half that saw dominant Dortmund put his goal under siege, but he produced some stunning saves.
Germany forward Karim Adeyemi was lively on the wing, while Englishman Bellingham was inches away from scoring for a second successive game.
The 19-year-old was not shy about getting stuck in either as he picked up his first yellow card for his new club with a strong challenge in the first half.
Bellingham had seven shots by the time he was withdrawn in the 58th minute - and will wonder how he was not on the scoresheet again.
What's next?
After topping the group, Dortmund will face the runners-up in Group E in the last 16 on 2 July in Atlanta.
Inter Milan currently occupy that position, but they face leaders Argentina's River Plate on Thursday (02:00 BST).
Fluminense will take on the Group E winners on 30 June in Charlotte.
Player of the match
After the opportunity to rate players has closed, the score displayed represents the average from all the submissions by BBC Sport users.