Gill put on 95 runs for the opening wicket with skipper Rohit Sharma, who made 42, to set the tone for the team's batting domination.

Rohit missed out on a fifty after he fell to Chamika Karunaratne but Gill kept up the attack with Kohli and raised his second ODI hundred, celebrating it with a fist-bump.

Gill smashed Jeffrey Vandersay for four fours in the over after the ton, but was soon bowled off a slower delivery from Kasun Rajitha.

Kohli put on another century partnership with Shreyas Iyer, who hit 38, and went on to record the ton with his arms and bat raised to an applauding crowd.

The ball before Kohli got his hundred saw a nasty collision at the square-leg boundary between Vandersay and Ashen Bandara, with both fielders stretchered off.

Kohli changed gears after his 46th ODI century - three behind Sachin Tendulkar's all-time record of 49 - as he smashed Karunaratne for two successive sixes.

He reached his 150 in 106 balls and finished off with 13 fours and eight sixes.