One thing all parties in the impeachment saga can agree on: $391 million in security assistance earmarked for Ukraine was withheld this past summer by the Trump White House and released on Sept. 11.

There's far less consensus, though, about just when that hold began. It's a key question, since that date may prove crucial for establishing whether the aid freeze violated the 1974 Impoundment Control Act, or ICA.

The Democratic-led House budget and appropriations committees have expressed "serious concerns that President Trump and his administration violated the ICA in withholding these funds." The committees have put the Trump administration on notice that they "are examining when, why, and how these funds were withheld; and whether these actions prevented agencies from spending the full amount that Congress provided for these activities, thus thwarting the will of Congress."

Here's a timeline of what's been learned about the timing of the Ukraine aid hold. It's based on testimony heard during the two weeks of the House intelligence committee's public impeachment hearings, as well as from transcripts that have been released of closed door depositions:

June 18, 2019: The Pentagon announces plans "to provide $250 million to Ukraine in security cooperation funds for additional training, equipment and advisory efforts to build the capacity of Ukraine's armed forces."

June 19: President Trump starts asking about the Ukraine military assistance, according to Mark Sandy, a career official in the Office of Management and Budget. Sandy told House investigators he learned of Trump's queries in an e-mail from Mike Duffey, a political appointee who oversees funding for military, intelligence and international affairs at OMB. This was the same day a report about the Pentagon's announced Ukraine assistance appeared in the Washington Examiner, a conservative website and weekly tabloid.

July 3: This is the earliest publicly known date when a hold on the Ukraine assistance appears to have been imposed. "On July 3, I learned," Jennifer Williams, a Russia adviser to Vice President Mike Pence, told the House Intelligence panel, "that the Office of Management and Budget had placed a hold on a tranche of security assistance designated for Ukraine."

July 12: Further evidence of a hold on the Ukraine aid is found in an email that OMB's Sandy received on this date from Robert Blair, a senior adviser to acting White House chief of staff Mick Mulvaney. Asked at a closed door deposition what was said in that email, Sandy replied, "to the best of my recollection, that the president is directing a hold on military support funding for Ukraine."

July 18: The hold becomes more widely known within the Trump administration. State Department Ukraine expert Catherine Croft, who'd been detailed to the National Security Council, told a public hearing of the impeachment inquiry that on this date, "I participated in a sub-Policy Coordination Committee video conference where an OMB representative reported that the White House Chief of Staff, Mick Mulvaney, had placed an informal hold on security assistance to Ukraine. The only reason given was that the order came at the direction of the President."

July 19: The Department of Defense has been notified of the hold, according to OMB's Sandy, who told House investigators he was informed of this by OMB political appointee Mike Duffey. Sandy said he asked Duffey what the duration of the hold would be "and was told there was not clear guidance on that." He also expressed concern to Duffey about the freeze on funds possibly violating the Impoundment Control Act, since it could lead to the expiration of those funds.

July 25: OMB's Sandy signs the first document making the hold official and valid through Aug. 5. This is the same day Trump called Ukrainian president Volodymyr Zelenskiy and asked for "a favor": that Zelenskiy would probe Joe Biden and his son Hunter's activities in Ukraine — as well as a debunked claim that Ukraine, not Russia, had hacked the Democratic National Committee's computer server.

Hours after that phone call takes place, the State Department receives two emails from Ukraine's embassy in Washington. That's according to Laura Cooper, the deputy assistant secretary of defense for Russia, Ukraine and Eurasia. "One was received on July 25, at 2:31 p.m. That email said that the Ukrainian embassy and House foreign affairs committee are asking about security assistance," Cooper told the House intelligence committee. "The second email was received July 25 at 4:25 p.m. That email said the Hill knows about the [Foreign Military Financing] situation to an extent and so does the Ukrainian embassy."

July 30: OMB's Sandy is informed he will no longer be approving the holds on Ukraine assistance. Instead, he tells House investigators, political appointee Mike Duffey would sign off on such documents. "He had an interest in being more involved in daily operations," says Duffey, "and he regarded this responsibility as a way for him to learn more about the specific accounts in his area."

Mid-August to early September: Duffey signs "at least half a dozen" additional temporary holds on the Ukraine assistance, according to Sandy.

August 28: Politico scoops a previously unreported story: that the Trump administration is "slow-walking $250 million in military assistance to Ukraine."

Sept. 11: The hold is lifted on the Ukraine assistance, 85 days after the Pentagon announced that aid had become available. That leaves only 19 days to obligate that funding.

Sept. 30: End of the fiscal year. According to OMB's Sandy, $35 million in funds do not get spent in time to meet the deadline. Congress includes that same amount in a continuing resolution to ensure the aid reaches Ukraine.

Copyright 2019 NPR. To see more, visit https://www.npr.org.