AC Milan have coasted into the last 16 of the Europa League as a 1-0 win over Ludogorets Razgrad in Thursday's last-32 second leg gave them a 4-0 aggregate victory.
The Rossoneri boasted a 3-0 lead in the tie from the first leg but were under the cosh from the off at San Siro as the Bulgarians set about trying to whittle down the deficit.
However, the hosts could afford to sit back in the opening stages and soon went on the attack, Andre Silva firing a low shot at goal that goalkeeper Jorge Broun managed to halt in the 12th minute.
Gennaro Gattuso's charges grew into the game and took the lead on 21 minutes when Patrick Cutrone's low cross across the six-yard box was rifled home by Fabio Borini at the far post.
Wanderson took advantage of a rare Milan defensive error to have a shot on goal midway through the first half but Antonio Donnarumma was able to make a comfortable save.
At the other end, Ludogorets struggled to clear both a Franck Kessie cross and Silva's follow-up on the rebound as the hosts ended the first half on top.
The second period then began in similar fashion as to how the first half ended, with Milan on top and dominating possession.
However, Cutrone spurned a gilt-edged opportunity to double the Rossoneri's advantage on 53 minutes, firing wide from Borini's chip into the box despite being completely unmarked.
Ludogorets caused panic in the Milan backline just after the hour as Natanel fired into the side-netting from close range.
Despite the odd foray forward by the visitors, it ultimately proved a comfortable night for the Italians, who cruised into the last 16 of the competition.
AC MILAN (4-3-3): A Donnarumma; Abate, Zapata, Romagnoli (Bonucci 74'), Rodriguez; Kessie (Mauri 56'), Montolivo, Locatelli; Borini, Silva, Cutrone (Kalinic 56')
LUDOGORETS RAZGRAD (4-2-3-1): Broun; Natanel, Moti, Terziev, Cicinho; Goralski, Abel (Dyakov 82'); Wanderson, Marcelinho (Campanharo 63'), Misdjian (Lukoki 71'); Swierczok