Jeetan Patel produced career-best figures to spin Warwickshire to their first Specsavers County Championship win of the season with a 130-run defeat of Surrey at Edgbaston.
Chasing 272 for victory on a turning pitch, Surrey were bowled out for 141, with Patel taking eight for 36 to complete match-figures of 62-32-89-12.
In the morning session, Surrey spinner Gareth Batty completed a career-best of his own of eight for 64 – including a hat-trick – before the home side declared on 166 for nine.
But talismanic home captain Patel then unpicked injury-hit Surrey's second innings with bowling of sustained accuracy and control to secure the sixth career haul of 10-or-more wickets in a match.
The hard-earned victory over the reigning champions gives Warwickshire's season much-needed impetus after they had started with three defeats.
Surrey's title-defence, meanwhile, now badly requires momentum of its own as this defeat comes on the back of three draws.
Resuming on the final morning on 76 for two, Warwickshire batted aggressively to make up for the loss of two sessions to rain the previous day.
Will Rhodes and Sam Hain, who scored 54 and 41 respectively, were among six batsmen to send up catches off the former England spinner whose hat-trick arrived when Tim Ambrose, Patel and Henry Brookes were caught off successive balls.
The hat-trick triggered the declaration. and when Surrey began their chase, Patel opened the bowling and quickly removed Mark Stoneman lbw before lunch.
The indefatigable Kiwi then turned the screw in an afternoon session during which Surrey moved from 39 for one to 103 for seven.
Patel produced the perfect delivery – pitching on middle stump before hitting off – to bowl Scott Borthwick.
That was followed by Ben Foakes sweeping Batty to short fine leg before opener Rory Burns perished lbw to a Brookes inswinger for 38.
Patel then inflicted decisive further damage with three wickets in 13 balls when he clipped Dean Elgar's off-stump and pinned Will Jacks and Ryan Patel lbw.
With Surrey seven down at tea, Rikki Clarke and Morne Morkel offered stoic resistance, with the latter defying for 53 minutes for a single before propping half-forward to Patel and becoming the 15th lbw victim of the match.
Warwickshire's captain moved into career-best territory when Batty's firm leg-side flick rebounded off one short leg into the hands of the other.
On his former home ground, Clarke completed an 89-ball half-century but the last twist to Patel's perfect day was his decision.
With 10 overs remaining, Patel removed himself the attack and brought back Brookes who immediately bowled Matt Dunn to seal victory, leaving Clarke unbeaten on 51 from 101 balls, with 10 fours and a six.