Mark Leibovich @MarkLeibovich
Swap “Perdue” and “Loeffler” with names below, and you’d have pretty much same story from 12/20 in GA/ "While the speech was billed as a rally to help PA's top GOP candidates, Mehmet Oz and Doug Mastriano, Trump spent most of his 2-hr address airing his old personal grievances." — PolitiTweet.org