Sergio Garcia shot a seven-under-par 65 to extend his lead heading into the final round of the Deutsche Bank Championship in Boston.
The Spaniard, on 19 under, holds a two-stroke advantage over Sweden's Henrik Stenson, who went round in 66.
Canada's Graham DeLaet's brilliant nine-under 62 lifted him into a share of third place alongside American Steve Stricker, a shot further back.
Ian Poulter is the best-placed Briton on 13 under par.
Compatriot Brian Davis - joint-leader after the first day - sits on 12 under, but compatriot Justin Rose slipped to eight strokes off the lead after managing only 69 in conditions that aided low scoring.
Under golf's rules, players were allowed to lift, clean and place their ball on the fairways because of the thunderstorms which soaked the course, saw an hour's play erased and meant the players went out in groups of three after the restart.
Garcia holed seven birdies, including five on the back nine, to complement a bogey on the 14th, before finishing in near darkness.
But the round of the day - and the lowest of the week - belonged to DeLaet, who recovered from dropping a shot on the first to embark on a run of four birdies in five holes, before finishing his round with five in the last seven.
Northern Irishman Rory McIlroy's 64 lifted him to eight under par, level with Phil Mickelson, the Open champion and a former winner of this tournament.
Tiger Woods's four bogeys in a round of 72 saw him slip to six under, alongside Northern Ireland's Graeme McDowell and Lee Westwood of England.