Angelo Mathews hit his 12th century as Sri Lanka made steady progress on day one of the opening test against Bangladesh, reaching 258-4 on Sunday.
At stumps, Mathews was batting on 114 with Dinesh Chandimal on 34.
Kusal Mendis scored 54 and accompanied Mathews in a 92-run partnership in a third-wicket stand that set the pace for the match.
Sri Lanka captain Dimuth Karunaratne won the toss and opted to bat first on a pitch that appeared to be flat.
But Karunaratne himself struggled against Bangladesh offspinner Nayeem Hasan, who returned figures of 2-71 after playing his first test since February last year.
Nayeem eventually had the tourists' skipper out leg-before for nine with a quicker delivery to leave Sri Lanka wobbling at 23-1.
But Oshada Fernando found the boundaries at regular intervals to keep Bangladesh fielders busy. His confidence grew and culminated with him hitting left-arm spinner Taijul Islam for six.
He was eventually out just before lunch when on 36 trying to defend another quicker delivery from Nayeem. He reviewed the decision immediately but in vain.
With the side at 66-2, Mendis and Mathews kept the tourists on course throughout the entire second session.
Mendis reached his 13th half-century off 93 balls with a single off Taijul.
A short time later Mathews reached his fifty off 111 balls, clipping pacer Syed Khaled Ahmed to deep square leg for a single.
But Bangladesh got a breakthrough with the first ball of the last session when Mendis played a half-hearted pull shot off Taijul (1-73) to give a simple catch at mid-wicket.
Shakib Al Hasan (1-27), who only just returned to the squad after recovering from COVID-19, then got into act with the wicket of Dhananjaya de Silva (6), leaving Sri Lanka at 183-4.
Mathews and Chandimal, however, dashed Bangladesh's hope of stealing an advantage in the match with risk-free batting.
Mathews in particular found his rhythm against the spinners and kept the scoreboard rotating rapidly though rode his luck at times. When on 38, he reviewed a decision successfully to survive and later on 69, Mahmudul Hasan Joy dropped a catch at slip off Taijul Islam.
Mathews reached his first century since January last year off 183 balls, flicking left-arm pacer Shoriful Islam through mid-wicket for a boundary.
Before the match a minute's silence was observed at the Zahur Ahmed Chowdhury Stadium in the memory of former Australian test player Andrew Symonds, who died in an auto accident late Saturday night near the northeastern Australian city of Townsville.