Thomas Muller scored twice on his 200th Bundesliga appearance for Bayern Munich as the champions beat Bayer Leverkusen to go to the top of the table.
Muller side-footed Bayern ahead with his fourth goal of the season and scored a 60th-minute penalty after Arturo Vidal was pushed in the box.
Bayern were awarded a second debatable penalty 10 minutes later for handball which Arjen Robben converted.
The win extended Bayern's 100% start as Leverkusen lost for the first time.
As well as winning their opening two league games, Leverkusen have reached the Champions League group stages, beating Lazio in their play-off tie.
But their record in Munich is poor and they lost for the 22nd time in 28 league games against Bayern at the Allianz Arena.
German international Muller opened the scoring after 26 minutes when he steered home a cross from winger Douglas Costa.
Costa then shot against a post before Leverkusen went close to equalising with a long-range free-kick from Turkey international Hakan Calhanoglu which struck the crossbar.
Stefan Kiessling was denied by a combination of Bayern goalkeeper Manuel Neuer and defender David Alaba just after half-time.
But Bayern secured victory thanks in part to the benefit of the doubt over two penalty decisions.
Defender Roberto Hilbert was penalised on both occasions, first when former Leverkusen midfielder Vidal went down following a free-kick and then when a cross from Costa struck him on the arm.
Muller slotted home the first one but rather than completing his hat-trick, allowed Robben to score his first league goal of the season from the second.
Versatile Alonso
Xabi Alonso was a top-class midfielder for Real Sociedad, Liverpool and Real Madrid before joining Bayern Munich in 2014.
But when he was sent off in a Champions League tie against Shakhtar Donetsk last season, Bayern coach Pep Guardiola claimed that when it came to running after another player the Spaniard was the worst player in the world.
But that did not stop Guardiola moving the former Spain international, 33, back from midfield into a central defensive role against Leverkusen.
With the champions missing four defenders through injury, Alonso was preferred to Dante in that position and, while barely putting a foot wrong in the game, also played a superb long pass to set up the opening goal.
Best of the rest
Cologne are third in the table after coming from behind to beat Hamburg 2-1, Anthony Modeste scoring the late winner with a controversial penalty.
Japan international Yoshinori Muto scored his first two goals in the Bundesliga in Mainz's 3-0 win over Hanover .
Australia international Mathew Leckie also scored his first goal in the competition to give Ingolstadt their second win of the season at Bavarian rivals Augsburg .
Stuttgart had goalkeeper Przemyslaw Tyton sent off and are bottom after a 4-1 defeat at home to Eintracht Frankfurt .
Borussia Dortmund play Hertha Berlin on Sunday.