We had two very, very close races in Tuesday’s night elections.

The closest was the Republican gubernatorial primary in Kansas between incumbent Gov. Jeff Colyer and Secretary of State Kris Kobach, a figure nationally known for his work on both President Trump’s controversial voting commission and for helping author anti-immigration legislation. Trump endorsed Kobach on the eve of the primary, which was expected to boost him to victory. But there doesn’t seem to have been much of a Trump bump in Kansas. Kobach leads 40.6 percent to 40.5 percent (less than 200 votes!).

If Kobach hangs on to win as provisional ballots are counted (and through a recount, if there is one) — yes, this could take a while — the general election in Kansas will suddenly be a lot more interesting. Kobach has had a pretty bad year, and he’s a polarizing enough figure to give state Sen. Laura Kelly, who won the Democratic nomination on Tuesday, a real chance. One recent poll suggested that Kobach, who a high percentage of voters view unfavorably thanks to his largely failed crusade against voter fraud, would make the general election a toss-up, while Colyer would win by double digits.

Meanwhile, in the much-watched U.S. House special election in Ohio’s 12th District (located in the Columbus area), Republican Troy Balderson appears to have edged out Democrat Danny O’Connor 50.2 percent to 49.3 percent. Although there are still thousands provisional and absentee ballots left to count — perhaps more than 8,400 — several prominent election analysts have called the race (although the Associated Press, the traditional gold standard for these things, has not made a call). While the loss will doubtlessly disappoint Democrats, it was still just a 1 percentage-point Republican win in a district with an R+14 partisan lean. That’s a Democratic overperformance of 13 points — not too far off the average Democratic overperformance (16 points) in federal special elections going into this week.

How Democrats have performed in special elections U.S. House and Senate special elections this cycle, by the seat’s partisan lean and final vote margin Year Date Seat Partisan Lean Vote Margin Dem. Swing 2017 April 4 California 34th* D+69 D+87 +18 April 11 Kansas 4th R+29 R+6 +23 May 25 Montana at large R+21 R+6 +16 June 20 Georgia 6th R+9 R+4 +6 June 20 South Carolina 5th R+19 R+3 +16 Nov. 7 Utah 3rd R+35 R+32 +3 Dec. 12 Alabama Senate R+29 D+2 +31 2018 March 13 Pennsylvania 18th R+21 D+0.3 +22 April 24 Arizona 8th R+25 R+5 +20 June 30 Texas 27th* R+26 R+21 +5 Aug. 7 Ohio 12th† R+14 R+1 +13 Partisan lean is the average difference between how the constituency voted and how the country voted overall in the last two presidential elections, with 2016 weighted 75 percent and 2012 weighted 25 percent. * Results are from either an all-party primary or an all-party general election, both of which include multiple candidates of the same party; vote margin is the total vote share of all Democratic candidates combined minus the total vote share of all Republican candidates combined. † Unofficial results. Sources: Daily Kos Elections, secretaries of state

Whoever wins, Balderson and O’Connor are likely to face off again in November, as Tuesday’s special election was simply to choose someone to fill out the remainder of this term. So Democrats’ biggest disappointment in this race (assuming Balderson hangs on) may simply be that they missed a chance to gain a bit of incumbency advantage — although it’s unclear how much incumbency advantage there is to be gained from 90-odd days in office.

Here are some other big results from Tuesday:

Check out all the polls we’ve been collecting ahead of the 2018 midterms.