London: Joe Root scored his maiden Test double century as England posted their highest total in three years in the first Test against Sri Lanka at Lord's.
Root struck 200 not out while Stuart Broad and Liam Plunkett added quick runs to carry England to 575-9 declared on the second day.
On a flat pitch, however, England's luckless bowlers could not drive home their advantage as Sri Lanka closed on 140-1.
Opener Kaushal Silva was 62 not out and Kumar Sangakkara, seeking to cap an illustrious career with a first Lord's century, was unbeaten on 32.
That England did not end the day in a position of even greater authority was largely due to squandered chances and contentious decisions.
Sri Lanka opener Dimuth Karunaratne successfully overturned a close lbw shout and twice edged through the slips.
And late in the day, after Chris Jordan had removed Karunaratne with his third ball in Test cricket, England were incensed by the television umpire's decision to give Silva the benefit of the doubt after he appeared to have been caught behind low by Matt Prior.
Sri Lanka started the day brightly as their decision to pepper England with short balls delivered two early wickets.
Prior, 76 not out overnight, fended Shaminda Eranga to short leg for 86 and Jordan mistimed a flick to leg and popped up an easy catch to the wicketkeeper Prasanna Jayawardene for 19.
There was no let-up in the drama in a rollicking opening session as Broad and Liam Plunkett spearheaded a counter-attack alongside the tireless Root.
Broad hit nine fours in a 39-ball 47 and Plunkett made the most of being dropped by Eranga at midwicket on two by clubbing a rapid 39. Both batsmen fell to Nuwan Pradeep, who finished with 4-123.
Brief scores
England - 575/9d (Root 200*, Prior 86, Bell 56, Pradeep 4-123, Eranga 3-163)
Sri Lanka - 140/1 (Silva 62*)
Status - Sri Lanka trail by 435 runs