The Bungles have turned it around.
Andre Caldwell caught a 20-yard pass from Carson Palmer with 22 seconds remaining as the Cincinnati Bengals defeated the Baltimore Ravens 17-14 in the biggest upset of early Sunday NFL action.
That victory served notice that Cincinnati (4-1) are back after a terrible 2008.
Cedric Benson rushed for 120 yards and became the first 100-yard rusher against the Ravens in 40 games, snapping the league's longest active streak.
Palmer went 18-of-31 on the afternoon, throwing for 271 yards, a touchdown, and an interception.
Cincinnati Bengals wide receiver Chad Ochocinco (85) is tackled by Baltimore Ravens cornerback Domonique Foxworth (24) on Sunday. The Bengals upset Baltimore. (Nick Wass/Associated Press) After the game, coach Marvin Lewis honoured defensive co-ordinator Mike Zimmer with a game ball. Zimmer's wife of 27 years, Lynn, died suddenly on Thursday. A cause of death has not been released.
Joe Flacco completed 22 of his 31 attempts for 186 yards for Baltimore (3-2). He connected with Ray Rice on a 48-yard strike with 6:59 left in the fourth quarter to temporarily give Baltimore the lead.
Flacco was also picked off twice.
Elsewhere, the New York Giants and Minnesota stayed undefeated by pounding on two of the NFL's worst teams, while Denver did it by scoring an overtime upset of the New England Patriots.
Oakland 7 at New York Giants 44
Eli Manning was 8-for-10 for 173 yards and two touchdowns before being pulled out to rest as the New York Giants (5-0) trounced the Raiders (1-4).
The Giants quarterback, suffering from plantar fasciitis, led the Giants to touchdown drives on their first four series before giving way to David Carr late in the first half.
Ahmad Bradshaw rushed for 110 yards and two majors on the afternoon, as the Giants picked up exactly twice that total on the ground.
Michael Bush scored the lone touchdown for Oakland on a five-yard run.
Minnesota 38 at St. Louis 10
Adrian Peterson had two rushing touchdowns to keep Minnesota a perfect 5-0.
The third-year running back scored the first touchdown of the game less than five minutes in and had one to cement the Minnesota victory in the fourth quarter. Defensive lineman Jared Allen returned a fumble 52 yards to put the Vikings up 14-0.
Brett Favre, who turned 40 on Saturday, was 18-for-24 on the afternoon. He passed for 232 yards, a touchdown and an interception.
Kyle Boller started at quarterback for winless St. Louis (0-5), but it was Marc Bulger in relief who threw their only touchdown. Bulger completed all seven passes, connecting with Donnie Avery on a 27-yard score.
New England 17 at 20 Denver (OT)
Longtime Patriots assistant Josh McDaniels got the better of former boss Bill Belichick as the Broncos twice fought back from 10-point deficits to stay unbeaten.
Denver is off to a 5-0 start after many football observers wondered if the 33-year-old McDaniels was ready for the job after controversies in the offseason involving quarterback Jay Cutler — later traded to Chicago — and receiver Brandon Marshall.
Cutler's replacement Kyle Orton has now thrown for seven touchdowns and just one interception. He threw for 330 yards, finding Marshall with a pair of 11-yard touchdowns, the second one coming on a 98-yard drive late in the fourth.
The Broncos needed the hot start — they play San Diego, Baltimore, Pittsburgh in their next three games.
Tom Brady threw touchdowns to Wes Walker and Ben Watson for New England (3-2). The Patriots, who averaged an all-time record 36.8 points per game in Brady's last full season in 2007, haven't topped more than 27 in a game yet this season.
Brady never got the ball in overtime. Orton led the Broncos on a 58-yard drive capped off by Matt Prater's winning 41-yard kick.
Jacksonville 0 at Seattle 41
What a difference Matt Hasselbeck makes for Seattle (2-3), which won for the first time since the quarterback went down with a Week 2 rib injury.
Hasselbeck threw for 241 yards and four touchdowns, two each to Nate Burleson and T.J. Houshmandzadeh.
David Garrard had a forgettable day for Jacksonville (2-3), coughing up the ball twice on sacks. The first resulted in a Hasselbeck-led touchdown drive, with Nick Reed returning the second fumble 75 yards for a touchdown.
Garrard was replaced late in the game by Luke McCown.
Atlanta 45 at San Francisco 10
The visiting Falcons broke open a 14-10 game with three unanswered touchdowns to extend their lead to 25 points by half.
First, receiver Roddy White took off on a 90-yard touchdown down the sidelines after hauling in a Matt Ryan pass. The 49ers fumbled on the ensuing kickoff, with Michael Turner punching in his second of three short touchdown runs on the day.
Ryan finished with 329 yards passing and also ran one in for Atlanta (3-1).
Atlanta receiver Roddy White takes off past 49ers defender Nate Clements and the rout is on for the Falcons. (William Cooley/Associated Press) Quarterback Shaun Hill lost for the time in eight starts at home for San Francisco (3-2). Glen Coffee rushed for the team's only offensive touchdown.
Pittsburgh 28 at Detroit 20
Ben Roethlisberger threw three touchdown passes and was 23-for-30 for Pittsburgh (3-2).
Touchdown passes to Hines Ward, Heath Miller and Mike Wallace paced Pittsburgh's offence on the afternoon. Rashard Mendenhall, seeing the bulk of the carries in Willie Parker's absence, rushed for 77 yards and the other major.
Daunte Caulpepper, starting for Detroit in place of the injured Matthew Stafford, ended up 23-for-36 for 282 yards, with one touchdown and an interception. For the second-straight week, star Lions receiver Calvin Johnson left with a leg injury.
Detroit (1-4) got a defensive touchdown from William James, who returned a Roethlisberger interception 38 yards for a touchdown.
Cleveland 6 at Buffalo 3
In a game of abject futility, a fourth-quarter fumble by Roscoe Parrish proved costly for the Bills (1-4), setting a chip shot field goal for Cleveland's winner.
Parrish mishandled a Dave Zastudil punt that was recovered by Blake Costanzo at the Bills’ 16-yard line. Billy Cundiff kicked an 18-yard field goal with 23 seconds remaining for the win.
Cleveland quarterback Derek Anderson was 2-for-17 and threw an interception on the afternoon. In fairness to Anderson, his targets dropped at least six catchable throws.
Buffalo’s Trent Edwards didn’t fare much better, going 16-for-31 with one picked-off pass.
Jamal Lewis was the only offensive player of note for either side, gaining 117 yards on 31 carries for Cleveland (1-4). It was his first 100-yard rushing game in almost two years.
Houston 21 at Arizona 28
Arizona's defence held firm in the final minute, stopping Houson (2-3) with a goal-line stand. Chris Brown of the Texans was stuffed on a fourth-down run attempt.
Matt Schaub had led the Texans all the way back to even terms from a 21-0 deficit, but threw an interception late in the fourth that Dominique Rodgers-Cromartie of the Cardinals returned 49 yards for the winning touchdown.
Kurt Warner led the Cards (2-2) to the large early margin with two touchdown passes to Larry Fitzgerald. Schaub battled back with two scoring throws to his star receiver, Andre Johnson.
Philadelphia 33 at Tampa Bay 14
Donovan McNabb made a impressive return from injury, throwing for 264 yards and three touchdowns to lift the Eagles to 3-1 on the season.
Rookie Jeremy Maclin had a breakout game, catching six passes for 142 yards, including two lengthy touchdown receptions. Leonard Weaver caught the other McNabb touchdown throw, with Brian Westbrook running in from seven yards for a score.
Quarterback Josh Johnson amassed 240 yards in the air for winless Tampa Bay (0-5), but fumbled twice and threw three interceptions. Both of Johnson's touchdown passes went to tight end Kellen Winslow.
Dallas 26 at Kansas City 20 (OT)
Tony Romo threw a 60-yard strike to Miles Austin in overtime as the Cowboys (3-2) escaped with a road win in a game in which they trailed for much of the day.
It was a career day for Austin, who caught 10 passes for 250 yards and two touchdowns. Romo threw for 351 yards and avoided interceptions in 34 passing attempts.
Kansas City jumped out to an early 10-0 lead on a Mike Vrabel touchdown catch from Matt Cassel, but needed a touchdown with just 24 seconds left in the fourth to send the game into overtime.
Cassel threw a strike to Dwayne Bowe for 16 yards and the equalizer, but Kansas City (1-4) couldn't get any offensive traction in overtime.
Matt Cassel had a strong performance in a losing cause, completing 23 out of 41 for 253 yards, two touchdowns and no interceptions.
Washington 17 at Carolina 20
Jake Delhomme threw for 181 yards and one touchdown as the Panthers (1-3) picked up their first win of the season.
Clinton Portis scored both a running and receiving touchdowns for Washington (2-3). He compiled 57 yards on the ground.
Washington’s Andre Carter recorded 2 ½ sacks in the loss.
With files from The Associated Press

