Chris Gayle became the first West Indies batsman to smash a triple-century in an away Test as Sri Lanka continued to struggle for success in the opening Test on Tuesday.
The former captain made a superb 313 not out to help his team post a massive 532-3 in their first innings at tea on the second day at the Galle International Stadium.
Vice-captain Brendan Nash was unbeaten on 55 at the interval as the West Indies posted their highest Test total against Sri Lanka, surpassing 477-9 declared in St Lucia in 2003.
Gayle cracked nine sixes and 32 fours in his 407-ball knock for his second Test triple-century. He was just four runs short of his career-best 317, against South Africa at home in 2005.
He also became only the fourth batsman to score two triple-centuries in Tests after Australian Don Bradman, India's Virender Sehwag and West Indies' Brian Lara.
Gayle's memorable moment came when he fluently drove unorthodox spinner Ajantha Mendia through the covers for a four to reach his triple-century. He then raised his helmet and bat and sat on the pitch in celebration.
He was lucky to survive on 287 when he was caught by skipper Kumar Sangakkara at short extra cover while fending off a rising delivery off paceman Dammika Prasad, but it was ruled a no-ball.
Gayle started walking back to the pavilion before being stopped by non-striker Nash. The decision was referred to the TV umpire before on-field umpire ruled it a no-ball.
Sri Lanka managed to contain runs, but found wickets hard to come by as they could dismiss just one batsman in two sessions.
Gayle, who batted aggressively on Monday to hammer 219 off 247 balls, played cautiously in the morning and added just 36 to his overnight score with the help of three fours.
He hit only one boundary in the opening hour, pulling Prasad. He later struck two fours in an over from paceman Thilan Thushara, lofting over mid-off and edging past slips.
The West Indies added 67 to their overnight total of 362-2 for the loss of one wicket in the morning.
Shivnarine Chanderpaul (32) fell soon after becoming the world's 10th batsman and the second West Indian after Lara (11,953) to complete 9,000 Test runs during his 104-ball knock.
He was caught by Mahela Jayawardene at first slip while attempting to cut off-spinner Suraj Randiv, adding only 12 to his overnight score 20. He put on 86 for the third wicket with Gayle.
Randiv has so far bagged two wickets and Mendis one.