This has been an election campaign like no other.
It was meant to be the Brexit election and during the initial weeks that was indeed Theresa May’s focus.
But then the unthinkable happened – a suicide bomber targeted children as young as eight at a concert in Manchester Arena, killing 22 people.
Out of respect for the victims, campaigning was quite rightly suspended.
Just under two weeks later, London’s streets came under siege.
Eight people were killed and scores injured after three men drove into pedestrians before jumping out of their van and stabbing at will.
Campaigning was halted again, although this time for a shorter period in view of the proximity to polling day.
The spirit of defiance on display in the aftermath of the atrocities was inspiring. People were determined not to be cowed, not to let the terrorists win.
But the tragic events did inevitably affect the campaign.
Outside Downing Street, the prime minister declared “enough is enough” and warned there had been “far too much tolerance of extremism” in the UK.
She also suggested prison terms for terrorism offences could be increased and later insisted she would change human rights laws if they “get in the way” of tackling terror suspects.
The attacks also shone the spotlight on the Tory leader’s record as home secretary, with opponents highlighting cuts to police numbers in England and Wales under her watch.
Moreover, questions have been raised about how much the intelligence services knew about the attackers and whether people slipped through the net.
The Conservatives are traditionally viewed as the party that is strong on defence and security, but rivals sought to cast doubt on their competence.
In turn, the Tories branded Jeremy Corbyn “soft on terror”.
From the off, after Mrs May’s U-turn on calling it in the first place, this has felt a bit like the general election that wasn’t meant to be.
But yesterday – despite heightened security at polling stations – people were resolved to get out and cast their vote.
Democracy prevailed.