Italy's controversial ex-PM Silvio Berlusconi has returned to the centre of the political stage, striking a reform deal with a centre-left rival.
Berlusconi was thrown out of parliament in 2013 after a tax fraud conviction.
But he still heads the opposition Forza Italia party and held lengthy talks with Democratic Party (PD) leader Matteo Renzi late on Saturday.
Under their agreement, he will back electoral and constitutional proposals aimed at making Italy more governable.
The current electoral system has left Italy with a series of shaky coalitions.
Last year's general election left no party strong enough to govern alone, until a broad coalition emerged, headed by Enrico Letta of the PD.
Berlusconi, 77, was initially part of the government but later pulled out. Several key former allies abandoned him to form the New Centre Right party while he became a more marginalised figure.
But he remained head of Italy's biggest opposition faction, Forza Italia.
Mr Renzi's talks with the former centre-right prime minister have divided the coalition, and the PD in particular, whose supporters despise him, BBC Rome correspondent Alan Johnston reports.
His car was hit with an egg and he was booed as he arrived at PD headquarters.
After the talks Berlusconi said the deal would "consolidate the biggest parties and simplify the political system".
Mr Renzi said the two leaders had backed a law that "favours governability and a bi-polar system, and eliminates the blackmail power of the smallest parties".
Silvio Berlusconi is keen to make a political comeback despite his fraud conviction and a separate conviction for paying an underage prostitute for sex. He is appealing against a seven-year jail term.
Much wrangling is expected in parliament over the reform proposals, with smaller parties hostile to changes likely to diminish their role in future governments.