Hungary's parliament approved a bill making Holocaust denial punishable by up to three years in prison, but the measure may be unconstitutional.
Politicians passed the bill submitted by Attila Mesterhazy, the prime ministerial candidate of the governing Socialist Party, by 197-1, with 142 abstentions.
Earlier attempts to ban Holocaust denial were rejected by the courts for infringing on freedom of speech. Efforts to modify the Constitution to ensure the bill's legality also failed.
Mr Mesterhazy's proposal was backed by the Socialists and most of the Alliance of Free Democrats, a former coalition partner. Most members of Fidesz, the main centre-right opposition party, and their allies, the Christian Democrats, abstained after Fidesz's wish to also include the denial of Nazi and Communist crimes in the bill was rejected.
Free Democrat Gabor Horn, who voted in favour of the bill, questioned the timing of the Socialists' proposal and wondered why a similar effort by his own party a few months ago was not accepted.
"The difference is that six months ago there was no campaign," Mr Horn said.
Parliamentary election will be held in April and polls show Fidesz leading the Socialists by a substantial margin. Jobbik, a relatively new far-right group accused by critics of racist views, is expected to easily clear the five % threshold needed to enter parliamentary.
Hate speech and incitement to violence against minorities is already a crime in Hungary, but the new bill adds "denying, questioning or making light of the Holocaust" to the penal code.