US president Donald Trump pushed his politically explosive crusade to wall off the Mexican border at a rally in the frontier city of El Paso on Monday, as negotiators in Congress neared a compromise to avoid the issue paralyzing government further.
Negotiators in Washington said they had an agreement in principle that could satisfy Trump's drive for increased border security.
It would provide only $1.375 billion for wall construction, far less than Trump has demanded. But if accepted, the deal would end a chaotic standoff in which Trump has threatened to cut budgets from swaths of government this Friday.
The news dropped just as Trump was about to climb the stage in the El Paso arena and the president, addressing a raucous crowd, said he did not have enough details to respond.
"We probably have some good news but who knows," he said.
Opening battle of 2020
Addressing thousands of people, many wearing his red "Make America Great Again" campaign hats, Trump said: "We need the wall and it has to be built and we want to build it fast."
According to Trump, illegal immigrants pose a national security risk to the United States and can only be stopped by dramatic extensions of current barriers.
It's an argument he backs up with lurid warnings about rapists and people traffickers extending far into the American heartland -- a message that critics describe as xenophobic and based on heavily manipulated data.
The border controversy is the opening battle of Trump's 2020 reelection bid and his El Paso rally gave a taste of things to come.
Trump chose the setting as a historic crossing point where he says walls have successfully halted an out-of-control influx of Mexican criminals.
"Walls save lives, walls save tremendous numbers of lives," he said.
There was a counter-message a short distance from where Trump spoke when rising Democratic star Beto O'Rourke -- a possible challenger in 2020 -- held his own rally.
A former congressman who excited grassroots Democrats last November with an against-the-odds near upset of Republican Senator Ted Cruz, O'Rourke is from El Paso.
"Tonight, we will meet lies and hate with the truth and a positive, inclusive, ambitious vision for the future from the US-Mexico border," he said.
Trump dismissed O'Rourke as "a young man who's got very little going for himself except he's got a great first name."
Making fun of what he said was O'Rourke's much smaller crowd, Trump said: "That may be the end of his presidential bid."
Congress nears deal?
Senator Richard Shelby, a key Republican negotiator in Washington, announced the "agreement in principle" on border security.
Senior congressional aides told AFP the agreement included $1.375 billion in funding for new walling. Trump had demanded $5.7 billion for his pet project.
The agreed figure would fund approximately 55 miles (89 kilometers) of barriers, all to be located in the Rio Grande Valley area of south Texas, the aides said. Hundreds of miles of the border have already long been fenced off.
The wall debate has deepened the already gaping rift between left and right since Trump's election.
There is even disagreement over the realities on the ground in El Paso.
Trump said fencing through the city had dramatically reduced crime by separating it from the troubled Mexican city of Ciudad Juarez, just across the border.
However, El Paso mayor Dee Margo said this narrative was "not factually correct."
"We were safe before and safe after," he told AFP. "The fence has helped with some criminal activities but the primary reason we are as safe as we are is because of our police force and our public safety people."
Trump has certainly failed to persuade Congress to fund his wall project, with Democrats accusing the president of using the whole issue to boost his political base, rather than fix the complex border situation.
Trump, fearing a humiliating defeat on his signature issue, has fought back fiercely.
In December, he pushed back at Congress by refusing to fund large sections of the government, leading to a five week shutdown of some 800,000 federal jobs. Next, he gave Congress until Friday to come up with the wall money or face another shutdown.
Alternatively, Trump could declare a national emergency, giving himself power to take the money from the military, although this would likely provoke lawsuits and even more political recriminations.