FRANKFURT AN DER ODER, Germany — Two years after Germany took in more than a million asylum seekers, there's scant evidence of the influx here in this struggling former communist stronghold hard on the Polish border.
There are no mosques, few ethnic-minority restaurants and only a scattering of nonwhite residents.
But in recent weeks, Muslim faces — a man with a long, scraggly beard, a woman fully veiled but for the eyes — have been everywhere, staring down from posters that bear the message: "Islam doesn't belong in Germany."
The posters are the handiwork of the Alternative for Germany party. And the message is part of a campaign likely to propel the party, known as the AfD, to a historic outcome in national elections on Sunday. For the first time since 1961, Germany is on track to seat a far-right party in Parliament.
The AfD's success has unnerved Germans who see the party as the ominous vanguard of a return to a far darker past built on prejudice and hate. In the final days of campaigning, Chancellor Angela Merkel's allies have deemed the party an affront to the German constitution, while her top rival, center-left candidate Martin Schulz, described the AfD as "our enemies."
But as the contest for a parliamentary seat here in Frankfurt an der Oder shows, it is far from clear whether the AfD's rise represents a German lurch to the extreme right, or simply a protest among voters fed up with a cross-party consensus that on key issues has drifted steadily left.
"The German political establishment has made it pretty easy to fill a market niche," said Jürgen Neyer, a politics professor at this city's European University Viadrina. "It's as if all car manufacturers offered only red cars. Now someone is offering a black car. Wow! Is it better? Hard to say. But it's something different."
Most Germans do not appear to want something different. Polls show that nearly 80 percent of the country will vote Sunday for one of the four main establishment parties.
One is led by Merkel, who has governed for 12 years and is overwhelmingly favored to win another term, bucking global trends that favor shake-ups over continuity.
The other three parties have been hard-pressed to meaningfully differentiate themselves from the chancellor on policy, endorsing her decision to welcome refugees and standing beside her as she has reached beyond her conservative base to capture the center ground on the environment, the economy and other major policies.
Then there are the left and right fringes — one with communist roots, the other with positions that critics deride as neo-fascist. In a country with pungent memories of both communism and fascism, the extremes have long struggled. They remain relatively small, hovering at around 10 percent.
But both have been growing — especially the right. They have caught in their currents disaffected voters who had begun to see German politics as a conflict-free zone where Merkel decided and everyone else nodded along.
"There used to be differences among the big parties in Germany. Those differences are gone," said Detlev Frye, 52, a former radio news announcer who was once a youth activist in the center-right Christian Democrats.
Under Merkel, that party shifted to the center — and Frye lost interest in politics. But his passion was reawakened when he saw a speech by Alexander Gauland, one of the founders of the AfD, in which he insisted there was an alternative to Merkelism.
"People had developed a state of mind of 'We can't change our direction,' " said Frye, who is now an AfD candidate for local office near this riverside city. "But there's no consensus among the people. There's only consensus among the politicians."
The AfD got its start in 2013 as a rebellion against European Union plans to bail out debt-stricken Greece, and that was the issue that first animated Frye. In that year's German parliamentary vote, the AfD nearly met the 5 percent threshold to win seats.
But it was the backlash against Merkel's response to the 2015 refugee crisis that came to define the AfD's image, and that pushed its support to 15 percent or more early last year.
Gauland, now one of the party's co-leaders, said in an interview that the refugee crisis has been the prime driver of AfD support because the party was willing to criticize Merkel's approach when others would not. But he also said the issue's fading from public view helps explain the party's slide in support earlier this year.
"The 'refugees welcome' policy of Angela Merkel alienated a lot of people," he said, noting in particular the images of long lines of asylum seekers making their way across European borders.
The refugees are still a problem, he contended, citing what he described as "societal changes for the worse" that he ascribed to "Islamic people who have totally other values." But those issues are "not so visible on television."
The AfD is trying to make them as prominent as possible in Frankfurt an der Oder, where the 76-year-old Gauland is the local candidate.
In some respects, the city — a poor east German cousin to west Germany's Frankfurt, which is a thriving capital of global finance — offers a perfect opportunity for the AfD.
The local economy was devastated by German reunification, losing high-tech manufacturing jobs to points farther west where education levels were higher, even as low-skilled service jobs hopped the muddy Oder River to Poland.
About 30 percent of the city's population left; those who remain tend to be older, with few career prospects. Disaffection with the liberal and cosmopolitan ways of Berlin, about an hour west by train, runs high.
What's more, the area's representative in Parliament has been an outspoken advocate for Merkel's refugee policy, and even took two Eritreans into his home at the height of the crisis.
"It could be that this is a problem for me in the elections," acknowledged the lawmaker, Martin Patzelt, who is a member of Merkel's CDU.
But he defended his decision as the response to "an urgent need" and said one of the refugees remains a guest in his home two years later.
"He's doing well. Going to school," said Patzelt, who said his family has taken in visitors for extended stretches before. "I always say, 'The world is sitting at our kitchen table.' "
Local AfD activists say residents resent Patzelt for helping foreigners when the needs are acute at home.
"People want Patzelt to be a voice for his constituents, not for the Eritreans," Frye said.
That sentiment is hardly universal, however, and in some cases, the party's inflammatory rhetoric seems to have backfired.
"I'm sure I won't vote for the AfD," said Christine Boll, 63, a former teacher. "I don't like racism."
But Boll was far less certain about what party she would vote for; days before the election, she said she was still having trouble figuring out what distinguished the mainstream parties from one another.
In that respect, she has company. With the establishment parties in agreement on the major issues, a likely scenario after the vote is that Germany once again has a "grand coalition" government in which Merkel's CDU joins forces with its top rival, Schulz's Social Democrats.
If that happens, and if the AfD finishes in third place, as many polls project, the party would become the official voice of opposition in the Bundestag, the German Parliament.
That would give the AfD a far more prominent platform from which to make its case ahead of the next elections, in 2021, and likely dash any hopes within the establishment that the party will simply fade away as the memory of the refugee crisis recedes.
"They really are the alternative, and that makes them attractive," said Neyer, the professor. "I think they're real. They're here to stay."
Luisa Beck contributed to this report.