Fuel tax rises which sparked weeks of violent protests in France have now been dropped from next year's budget, the government has announced.
The move was announced by Prime Minister Edouard Philippe, who a day earlier had only promised to postpone them for six months.
The "gilets jaunes" (yellow vest) protests have hit major cities over the past three weekends.
Further demonstrations are planned for this weekend.
They have grown to reflect more widespread anger at the government.
The "yellow vests" are so called because they have taken to the streets wearing the high-visibility yellow clothing that is required to be carried in every vehicle by French law.
Four people have died since the unrest began and the resulting violence and vandalism have been widely condemned.
What has the prime minister said?
Mr Philippe said on Tuesday that the next planned rise in the so-called carbon tax on vehicle fuel, which had been due to come in on 1 January, would be suspended for six months to allow consultations.
He also said that planned increases in gas and electricity prices this winter would be halted, and that a toughening of the rules for vehicle emissions tests would also be postponed.
On Wednesday, Mr Philippe told the lower house of parliament: "The government is ready for dialogue and is showing it because this tax increase has been dropped from the 2019 budget bill."
It is a major climbdown by the government of President Macron, who had said the measures were necessary to combat climate change and meet budget deficit reduction targets.
Why the widespread anger?
Mr Macron was elected on a platform of economic reform which would improve the lives of French people via lower unemployment and a kick-started economy.
But many feel that has not emerged. An analysis of the 2018-19 budget carried out by France's public policy institute, for example, found that incomes for the poorest quarter of households would largely drop or stay the same under the plans.
Middle-income earners would see a modest bump - but the greatest beneficiaries would be those who were already wealthy, in the top 1%. The pattern is worse for retired people - almost all of whom will be worse off.
Who are the protesters?
The "gilets jaunes" movement began as a protest against a rise in duties on diesel, which is widely used by French motorists and has long been less heavily taxed than other types of fuel.
Protesters say Mr Macron is out of touch, particularly with non-city dwellers who rely on their cars.
The movement has grown to reflect a range of grievances, including the marginalisation of rural areas, high living costs, and general anger at President Macron's economic policies.
The protests have no identifiable leadership and gained momentum via social media, encompassing a range of participants from the anarchist far left to the nationalist far right, and plenty of moderates in between.
In recent days, ambulance drivers and students have launched their own protests.