Pune: The Mumbai Indians skipper Harbhajan Singh and Lasith Malinga bowled an inspired spell to script an amazing one-run win over Pune Warriors India in an Indian Premier League match in Pune on Thursday.After winning the toss and batting first, Mumbai were restricted to just 120 for 9 in their 20 overs. However, they made a terrific comeback to win the contest on the last ball of the match, with Harbhajan taking 2 for 18 and Malinga 2 for 25.Robin Uthappa (18) gave Pune a rousing start, hitting a four through extra cover off Lasith Malinga and a straight six off Munaf Patel. But Munaf had the last laugh when he trapped the opener right in front. But like Mumbai, who lost five wickets in the back end of their innings, Pune too were found guilty of losing their top-order batsmen â Jesse Ryder (9), Michael Clarke (14) and Steven Smith (2) â within just seven runs. While Ryder holed out in the deep to Harbhajan, Clarke seemingly fell to an umpiring error. Umpire Sudhir Asnani raised his finger when a Harbhajan delivery hit the top of Clarkeâs pad and could have easily gone over the stumps as the batsman was struck well outside of his crease. Skipper Sourav Ganguly (16) and Mithun Manhas (42) tried to rescue Puneâs sinking ship by sharing 47 for the fifth wicket. But Gangulyâs stay at the wicket was cut short by Malinga who bowled the Pune skipper off a slower delivery in the 17th over. But Manhas kept Pune in the game by taking 11 runs in the 18th over bowled by Pragyan Ojha. But Malinga negated that with a terrific penultimate over, in which he took Wayne Parnellâs wicket and gave away just four runs. And though Manhas and Bhuvneshwar Kumar (10) scored 10 off the 12 required runs in Munafâs last over, the hosts still fell short by one run. Mumbai were provided a solid start by Sachin Tendulkar and James Franklin as they shared 50 runs in 46 deliveries. But the wicket of Franklin changed the course of the visitorsâ innings. The left-hander became the first victim of Kumar, who also took the wicket of the in-form Ambati Rayudu (1) later in the innings. Franklin was caught by Manhas when the New Zealander tried to up the Mumbai scoring rate. Pune made full use of the opening Franklinâs wicket provided, striking at regular intervals thereafter.Just six runs later, Rohit Sharma (3) was involved in a big mix-up with Tendulkar, which resulted in the run-out of the former. After getting hit for 16 runs in the first over, Ashish Nehraâs fortunes changed when he got the big wicket of Tendulkar, who scored 34 before nicking behind to the wicketkeeper Uthappa. Including Tendulkarâs wicket, Mumbai lost the wickets of Robin Peterson (13), Rayudu, Thisara Perera (0) and Harbhajan Singh (0) in the space of just 12 runs. Though Dinesh Karthik (18) and Malinga (14) stayed at the wicket for a little longer, their partnership of 26 could only take Mumbai to 120. Both Malinga and Ojha (1) were also run-out in the last over of the Mumbai innings. Kumar returned with figures of 2 for 9 in his three overs, while Nehra finished with 2 for 19 in his four overs.