Steven Davies and Rory Burns both scored determined hundreds to lead a Surrey fightback against Somerset on the third day of the County Championship Division One match at the Oval.
Davies hit a six-hour 147 and Burns 115 as Surrey reached 366-9 declared in reply to Somerset's first innings of 384, having begun the day on 98-4.
At stumps, on 6-0 from two second innings overs, Somerset openers Marcus Trescothick and Nick Compton had increased their side's overall lead to 24.
Surrey's fifth-wicket pair added 159 in 55 overs, after Burns resumed on 43 and his fellow left-hander Davies on nine.
While the 22-year-old Burns was confirming with his third first-class hundred the fine impression he made last year, when scoring 741 first-class runs for Surrey at an average of almost 50 in his first full season, it was Davies who played perhaps the most significant innings of the day.
The wicketkeeper-batsman, who has made eight one-day international and five Twenty20 international appearances for England, endured a difficult summer last year when he scored just 438 first-class runs at 21.90, with only one hundred, and faded out of England's plans. He batted almost all day, facing 269 balls and hitting 22 fours.
Burns finally fell, after an innings spanning 345 minutes and 285 balls, and with 19 fours, when he tickled a legside catch to keeper Craig Kieswetter to give Steve Kirby some reward for his efforts.
Then, after Gary Wilson - dropped in the gully on 15 - had nibbled at an outswinger from Alfonso Thomas to go for 17, Davies was joined in a further stand of 71 in 23 overs by Gareth Batty.
Batty pulled the disappointing George Dockrell's left-arm spin for four and six from successive balls before being lbw for 36 to Jamie Overton, and after Stuart Meaker wafted an edged catch to Kieswetter off Kirby, to fall for a duck, Davies's long innings finally ended when he swung a steepling catch to Kirby off Overton to prompt an immediate declaration.
Both Kirby and Overton bowled well for hauls of 3-89 and 3-75 respectively.