This may be hard to believe, but we’re only two weeks into the new year, and halfway through January, Donald Trump has generated a year’s worth of provocative headlines.

Consider an overview of the presidential developments we’ve seen so far in 2018:

Jan. 1: Trump blasts Pakistan in a New Year’s Day tweet, condemning the country’s “lies and deceit,” and suggesting an end to U.S. aid, and blindsiding his own administration’s officials.

Jan. 2: Trump taunts Kim Jong-un’s “nuclear button” and effectively dares North Korea to demonstrate its nuclear capabilities.

Jan. 2: Trump suggests imprisoning Huma Abedin and James Comey, pressuring the Justice Department to pursue charges against his perceived domestic enemies.

Jan. 2: Trump seeks credit for safe commercial air travel.

Jan. 3: Trump’s lawyers threaten Steve Bannon, the former chief White House strategist, with “imminent” legal action.

Jan. 3: Asked directly about Trump’s “mental fitness” during a press briefing, the president’s press secretary responds by changing the subject.

Jan. 4: Trump’s lawyers try to block publication of a book the president doesn’t like.

Jan. 4: Trump appears in the White House press briefing room, but only through a pre-recorded video in which he talks about how impressed he is with his own tax plan.

Jan. 6: Trump assures the world that he’s a “very stable genius.”

Jan. 6: Months after publicly committing to talking to Special Counsel Robert Mueller, Trump refuses to say whether he’s still prepared to answer Mueller’s questions.

Jan. 6: After publicly insisting “talking is not the answer” when dealing with North Korea, Trump, asked about direct diplomacy with Kim Jong-un, says, “Sure. I always believe in talking.”

Jan. 8: Trump says at the American Farm Bureau’s annual convention, “Oh, are you happy you voted for me. You are so lucky that I gave you that privilege.”

Jan. 8: Trump appears to not know the words to the National Anthem.

Jan. 9: Trump briefly and accidentally endorses the Democratic position on DACA protections for Dreamers. A House Republican quickly reminds the president of what his position is supposed to be.

Jan. 10: Trump’s administration gives a special deal to Florida on coastal oil drilling, singling out Gov. Rick Scott (R), Trump’s preferred Senate candidate, for gushing and excessive praise.

Jan. 10: Trump, displaying an alarming lack of self-awareness, demands changes to American libel laws. “You can’t say things that are false, knowingly false. and be able to smile as money pours into your bank account,” he declares.

Jan. 10: Trump urges his Republican allies in Congress to “take control” of the investigation into the Russia scandal.

Jan. 10: Trump points to letters (which don’t exist) from television anchors (who also don’t exist) who told him he hosted “one of the greatest meetings they’ve ever witnessed.”

Jan. 10: Trump boasts about selling jets to Norway that don’t exist.

Jan. 11: Confused by a Fox News segment, Trump criticizes a surveillance law his administration strongly supports.

Jan. 11: Trump accuses FBI officials of “treason.”

Jan. 11: Trump refuses to say whether he’s spoken to Kim Jong-un or not.

Jan. 11: Trump insists “there’s a big difference between DACA and Dreamers,” despite the fact that DACA was the policy that created protections for Dreamers.

Jan. 11: Trump makes racist comments about “shithole countries.”

Jan. 12: Trump cancels London trip and blames Barack Obama for reasons that don’t make any sense.

Jan. 12: The Wall Street Journal reports that Trump’s private attorney paid a former porn star shortly before the 2016 election in order to stop her from discussing a sexual encounter with Trump.

Jan. 14: After putting Dreamers’ future in jeopardy, and rejecting bipartisan compromises, Trump says DACA is “probably dead” – and insists Democrats are to blame.

Jan. 14: Following decades of provocative racial controversies, Trump tells reporters, “I’m not a racist.”

Don’t be too surprised if, during the next presidential campaign, would-be rivals to the president run on an “I promise to be boring” platform.