Is there any purer delight in television than a perfectly executed, genuine twist? I honestly had not thought about how, or if, Veep would reference the #MeToo movement. And if I had thought about it, considering the abundance of handsy dirtbags in this universe, the question I would’ve landed on is: Which one of these guys is going down and taking Selina down with him? (Andrew being the most likely contender, no? I feel like it’s always Andrew.) Or would Selina be accused by Tom James, her onetime colleague and forever-sneakiest bastard, of abuse-of-power by workplace seduction?
So when it’s revealed that the trending hashtag in Veep-land is going to be not #MeToo but #NotMe, as one woman after another goes public to insist that she never, ever dated Jonah Ryan, I felt, in my soul, that this is the purpose for which the laughing-so-hard-you’re-crying emoji was designed. When Amanda (A+ guest spot by SNL’s Heidi Gardner) gave her press conference, choking up as she described how their very professional lunch was “really more of a group thing,” I DIED and now my ghost will be recapping the rest of this farewell season. “He once tried to friend me on Facebook, and I did that thing where I never responded yes or no, hoping —praying — that it would end. His behavior was completely appropriate at all times.” !!! And then there’s that knockoff Gloria Allred stepping in to say that people are “finally starting to believe women who say they did not date Jonah Ryan” — guys, I’m going to miss this show so much.
But before we can really get to Washington, we have to go to Aspen, where presidential hopefuls are forced to square dance their way into the heart of Felix, the closeted billionaire ex–record-producer, who says things like, “We’re here in Aspen to build bridges to the future. Bridges made of ideas,” and also gets to choose the next president, because democracy. (Selina: “No wonder the rest of the world hates us.”) Felix’s whole vibe is very “what if Guy from Never Been Kissed moved to Silicon Valley,” with his button-down open to the bottom of his ribcage. This episode reminds me of the trip to Clovis headquarters in season three, and I am heartened as ever that the writers of Veep have as much disdain for disruption-preaching tech bros as I do.
Of course Felix is the type of one-percenter who cultivates douchey quirks in place of an actual personality, so his shtick is making everybody square dance as this ideas-conference/sycophancy-fest kicks off. (Love watching Gary repeat the dance instructions quietly into Selina’s ear.) Felix, Dan reports, is so idiotic and insecure that the best way to win him over is to straight-up repeat the last two sentences he says back to him. Selina thinks that’s pathetic and naturally does not realize that this is exactly the type of ego-fluffing in which Gary is perpetually engaged. Then Amy bolts from the conversation to go vomit and we get a perfect JLD line reading: “It always has to be about her.”
Gary thinks he’s cracked it — Amy has bulimia! — and he and Selina spend the rest of the episode shit-talking Amy’s inability to even have an eating disorder properly. (“She might want to consider a little less bingeing and a little more purging.”) When they finally find out she’s pregnant, Selina has this fantastic response: “I did not spend my entire life defending a woman’s right to choose for you to choose this.” Felix is SMITTEN with this response— you know a woman in his office had four children?! (Selina: “What was she, a possum?”) But also/sidebar: I know we’re not supposed to know or even care which party Selina’s in, but she’s got to be a Democrat, right? Not a lot of pro-choice women in the Republican realm these days.
Selina arrives in Aspen thinking the whole song–and–square-dance is a formality before Felix announces his support for her. But it’s really more like The Bachelor: Democracy Edition, as Tom James is also in residence, here to vie for Felix’s wallet and do some disrupting of his own. ( … I’m sorry.) Just as Selina’s making headway with Felix, landing the keynote spot in his Marshmallow Roast Talk (sweet Jesus), Tom intercepts her to FUCK HER UP with the most devastating blow of all: an earnest expression of true love. This basically short-circuits Selina’s brain — Kent, observing with typical detachment: “She’s having a textbook aneurysm” — and moves Tom to the top of Felix’s power ranking.
Selina finds Tom post-aneurysm to ream him out for his bullshit: “What are you, some sort of sociopath? That was the most humiliating experience I’ve had in my entire life, and I was vice-president of the United States.” But Tom is here with another plot twist: He had a heart attack. They both had heart attacks and it made them think about their lives and each other and TRUE LOVE or at least the prospect of being unhappily married suburbanites who bicker over landscaping expenses! I have to say I find this whole scene EXTREMELY convincing but maybe I am just a sucker, looking for romance and/or chemistry in this garbage world?
A moment for Tony Hale’s impeccable delivery, after Selina asks if the bath bomb he’s suggesting to make her feel better “will explode between my legs and make me come until I cry,” of the line: “I think it’s peppermint.”
Looking to get back into Felix’s number-one spot, Selina pops by his breakfast table to suggest they “disrupt the election,” and while that made me say, aloud to no one in my apartment, “That’s disgusting,” it makes Felix say to his assembled minions, “Scatter,” so, point: Selina. Her idea is to announce a running-mate now, earlier than anyone’s ever done it, and this seems to legitimately cause Felix to, like, orgasm at the table? Great work, everybody. While Selina was appalled earlier at the idea of an all-female ticket, she has warmed to the idea of pulling in her “protégé,” Senator Kemi Talbot, if it means leaving Tom in the dust.
All of Selina’s maneuvering should be working out perfectly, but someone has to fuck it up, and that someone, as usual, is Mike.
Selina invites Mike over because he “writes for the internet now” and she wants to leak the news of the Meyer-Talbot team, “the first all-female ticket since Carter-Mondale.” Mike, however, is apparently the only person in Washington who doesn’t already know the open secret that is Felix’s sexual orientation. Upon overhearing this bit of gossip, he hits publish, goes viral, and gets Selina exiled from Felixland.
Does it make her feel better to know that Tom is also not getting any money from Felix? As Amy reports, Tom is having an affair with his Amy, which is deeply upsetting to Selina and also to me personally. (I wanted to believe!) I have to say, I have never found Selina more inspiring than in this moment, when she makes Tom’s deputy sidepiece get her a cocktail. I hope to one day imbue any words at all with the disdain and power Selina puts into “light agave.”
Who is going to cross that idea-bridge into the Felix future? Kemi Talbot. Did you know she’s the future of the party? That’s something Felix figured out all by himself!
In other news, Dan — who is 39 and a half, okay? — is feeling insecure about having aged out of Felix’s demo. He’s getting old, like, voting-in-midterms old. As he tells Amy, “You pull it out to come on her tits because you think it’ll make you feel alive. But it doesn’t matter where you come, Ames.” At this point I write in my notes: “Actually Dan, it does matter because you came inside Amy and now she’s pregnant.” Amy says the word “future” and something clicks into place for Dan: It’s time to start screwing teenage cater-waitresses named Meagan. Time for Amy to schedule that abortion, and also that flu shot.
A Few Other Things …
• What do we think that grand jury is going to find out about Andrew? Will Selina’s campaign collapse amid a Meyer Foundation scandal?
• Ben, considering Felix’s Gen-X–age paramour: “He’ll look younger after Felix switches blood with him.”
• Spotted near the end in onscreen text: The “Clean Coal Breakfast” is sponsored by the Coal Council.
• Kent on Dan’s potential appeal to Felix: “In current gay parlance, Dan presents somewhere between a wolf and an otter, some would call a frost otter.”
• Just because Jonah split the bill with Amanda doesn’t mean it wasn’t a date! “I split the bill on all my dates. Why would I pay for a girl to get fatter?”
• Selina’s initial reaction to the proposal of an all-female ticket: “I don’t think so. The American people work hard for a living, okay? They don’t need that kind of bullshit.” Considering how spineless she is on virtually every issue that matters, I kind of find Selina’s unwavering commitment to internalized misogyny almost … inspiring? At least she knows what she believes!
• Selina: “Thank you so much for man-telling me that.” Tom: “I believe the word you’re fumbling for is mansplaining.”
• “I’m addicted to disruption ever since I stopped using cocaine.”
• Ben, to Selina when she’s (temporarily) secured Felix’s support: “You’re gonna be drowning in money so dark it could get shot entering its own apartment.”
• Selina, proud that her ass used to be the “candy apple” of the Senate, upon learning that the senator who couldn’t keep his hands off her is under investigation for misconduct: “Oh right, because that’s bad now.”
Insult of the Episode Selina, upon hearing Dan had sex with Amy: “What were you wearing, a full-length mirror?”
Compliment of the Episode I was going to say that the way Tom said, “You’re in my head all the time” really did a number on me, but now that we know he cannot be trusted, I’m going to give this to Gary, who spins an insult — “Selina is a bit of a lightweight” — into a compliment: “Because you’re so thin.”
Jonah Shall Henceforth Be Known As Lyin’ Ryan? As Richard said, “That’s gonna stick.”
By submitting your email, you agree to our
Terms and Privacy Notice
and to receive email correspondence from us. This site is protected by reCAPTCHA and the Google
Privacy Policy and
Terms of Service apply.
or
Already a subscriber?
What is your email?
This email will be used to sign into all New York sites. By submitting your email, you agree to our Terms and Privacy Policy and to receive email correspondence from us.
Password must be at least 8 characters and contain:
Lower case letters (a-z)
Upper case letters (A-Z)
Numbers (0-9)
Special Characters (!@#$%^&*)
This password will be used to sign into all New York sites. By submitting your email, you agree to our Terms and Privacy Policy and to receive email correspondence from us.
You’re in!
As part of your account, you’ll receive occasional updates and offers from New York, which you can opt out of anytime.
or
Already a subscriber?
What is your email?
This email will be used to sign into all New York sites. By submitting your email, you agree to our Terms and Privacy Policy and to receive email correspondence from us.
Password must be at least 8 characters and contain:
Lower case letters (a-z)
Upper case letters (A-Z)
Numbers (0-9)
Special Characters (!@#$%^&*)
This password will be used to sign into all New York sites. By submitting your email, you agree to our Terms and Privacy Policy and to receive email correspondence from us.
You’re in!
As part of your account, you’ll receive occasional updates and offers from New York, which you can opt out of anytime.
Already a subscriber?
Already a subscriber?
`;
// integrate Sub(x) scripts and elements
if (hostname !== 'subs.nymag.com') { // do not integrate on this subdomain
document.head.appendChild(trackingScript);
document.body.insertAdjacentHTML('beforeend', subXAnimationElements);
}
There was an error processing the request. Please try again later."}).catch(e=>console.error("Error verifying email: ",e)))(r.querySelector(".content"),o.bannerCTAVerification)})):(l.remove(),s.remove()),o.dismissable||n.remove(),o.useAlertIcon||a.remove(),r.classList.add("show"),n.addEventListener("click",()=>{u(),r.classList.remove("show")})}else r.remove()}});
}, {"3":3,"6":6,"17":17,"35":35,"40":40}];
window.modules["global-nav.client"] = [function(require,module,exports){"use strict";const dom=require(4),auth=require(17),signInButton=dom.find(".user-signin"),signOutButton=dom.find(".user-signout"),globalNav=dom.find('[class^="global-nav"]'),body=dom.find("body"),dropdownItems=dom.findAll(".dropdown-wrap"),gtm=require(3),appendLandingPageParams=require(135),pageUri=require(124).getPageUri(),subscriptionPromoLinks=dom.findAll(".persist-params"),searchString=window.location.search||"";function closeDropdowns(e){let n=globalNav.querySelectorAll(".dropdown.open");dropdownItems.forEach(function(t){let i=t.querySelector(".dropdown");!n||t.contains(e.target)&&27!==e.keyCode||i.classList.remove("open")})}function gtmSendReport(e,n,t){let i={eventCategory:"ecommerce",eventAction:"componentClick",brand:e,dimension23:"global-nav",list:pageUri,pageZone:"header",variant:"nav-link"};"global-nav-link"===t&&(i.eventLabel=n.href),gtm.reportNow(i)}function updateElementTargetUrlsIfQueryStrings(e){if(searchString){const n=new URLSearchParams(searchString);let t=e.href;if(t.includes("?")){const i=t.split("?"),o=new URLSearchParams(i[1]);for(let e of n.entries())o.set(e[0],e[1]);t=`${i[0]}?${o.toString()}`,e.href=t}else e.href=`${t}?${n.toString()}`}}function init(e){const n=e.querySelectorAll(".to-landing-page");window.addEventListener("auth:init",()=>{signInButton.addEventListener("click",function(e){e.preventDefault(),auth.showEmbeddedLoginFlow("top navigation")}),signOutButton.addEventListener("click",function(e){e.preventDefault(),gtmSendReport("Sign Out",e.target,"user-info-link"),auth.logout()}),auth.isAuthenticated()&&e.classList.add("signed-in"),(auth.isSubscriber()||auth.isMobileAppRequest())&&e.classList.add("subscribed"),e.querySelectorAll(".user-link").forEach(e=>{e.classList.add("active")}),subscriptionPromoLinks.forEach(e=>{updateElementTargetUrlsIfQueryStrings(e)}),appendLandingPageParams(n)})}dropdownItems.forEach(function(e){e.addEventListener("click",function(){e.querySelector(".dropdown").classList.toggle("open")})}),body.addEventListener("click",closeDropdowns),document.addEventListener("keydown",closeDropdowns),globalNav.addEventListener("click",function(e){let n=e.target;n.classList.contains("global-nav-track")&>mSendReport(n.text,n,"global-nav-link")}),module.exports=init;
}, {"3":3,"4":4,"17":17,"124":124,"135":135}];
window.modules["aaa-module-mounting.legacy"] = [function(require,module,exports){"use strict";const _pickBy=require(221),_each=require(406),Fingerprint2=require(408),DS=require(407),Eventify=require(246);function registerGlobals(){window.DS=DS,window.Eventify=Eventify,window.Fingerprint2=Fingerprint2,DS.value("Eventify",Eventify),DS.value("Fingerprint2",Fingerprint2),DS.value("$document",window.document),DS.value("$window",window)}function mountDollarSliceComponents(){DS.service("components",["$document","$module",function(e,n){var o=_pickBy(n.definitions,e=>e.providerStrategy===n.providers.controller),r=Object.keys(o);function t(e){return o=>{try{n.get(e,o)}catch(e){logMountError(o,e)}}}_each(r,n=>{var o=e.querySelectorAll('[data-uri*="/_components/'+n+'/"]'),r=e.querySelectorAll('[data-uri$="/_components/'+n+'"]');_each(o,t(n)),_each(r,t(n))}),this.components=r}]),DS.get("components")}function logMountError(e,n){const o=e.outerHTML.slice(0,e.outerHTML.indexOf(e.innerHTML));console.error("Error attaching controller to "+o,n)}registerGlobals(),"loading"===document.readyState?document.addEventListener("DOMContentLoaded",()=>{mountDollarSliceComponents()}):mountDollarSliceComponents();
}, {"221":221,"246":246,"406":406,"407":407,"408":408}];
window.modules["ads.legacy"] = [function(require,module,exports){"use strict";const _map=require(118),_forEach=require(107),_isString=require(268),_intersectionWith=require(409),_isEqual=require(274),_each=require(406),_debounce=require(182),_sortBy=require(205),page=require(124),visit=require(114);DS.service("adService",["Eventify","$cid","$document","$window",function(e,t,a,i){var o,n,s,r,d,c,u,l,g={},p=this,h=[],f=visit.getQueryParamsObject(["utm_campaign"]),m=document.querySelector('script[data-type="ad-a9"]'),b=[],w=!1,v=[],y=document.querySelector('script[data-name="ad-doubleverify"]');document.querySelector('script[data-name="concert-ads"]')||(i.NYM={},i.NYM.analytics={},i.NYM.analytics.adStartTime=i.performance.now(),i.googletag=i.googletag||{},i.googletag.cmd=i.googletag.cmd||[],u=i.googletag,(m||y)&&(i.googletag.cmd=i.googletag.cmd||[],i.googletag.cmd.push(function(){i.googletag.pubads().disableInitialLoad()})),m&&(l=i.setInterval(function(){void 0!==window.apstag&&void 0!==window.apstag.timeout&&(i.clearInterval(l),window.apstag.cleared=!0,l=null)},10),setTimeout(function(){l&&(i.clearInterval(l),i.googletag.pubads().refresh(),window.apstag||console.log("MESSAGE: Timeout for A9 load exceeded, aborting"))},500)),y&&(b.push(new Promise(function(e){w?e():v.push(e)})),c=i.setTimeout(T,2500)),o=function(e){var t,a,o=e.data,n=[];return o.loaded?e:(o.loaded=!0,t=null,(t=o.sizes?u.defineSlot(o.name,o.sizes,o.id).addService(u.pubads()):u.defineOutOfPageSlot(o.name,o.id).addService(u.pubads())).setTargeting("adid",o.id),f.hasOwnProperty("utm_campaign")&&t.setTargeting("utmcamp",f.utm_campaign),a=p.getAdCount(o.label),t.setTargeting("label",o.label+"_"+o.site+"-"+a),u.display(o.id),u.pubads().addEventListener("slotOnload",function(){i.NYM.analytics.firstAdLoadTime||(i.NYM.analytics.firstAdLoadTime=i.performance.now(),i.NYM.analytics.firstAdLoadLabel=e.data.label)}),n=_(o),Promise.all(b).then(function(){n?window.apstag&&window.apstag.cleared?window.apstag.fetchBids({slots:[n],timeout:window.apstag.timeout},function(){u.cmd.push(function(){window.apstag.setDisplayBids(),u.pubads().refresh([t],{changeCorrelator:!1})})}):y&&u.pubads().refresh([t],{changeCorrelator:!1}):u.pubads().refresh([t],{changeCorrelator:!1})}),e.slot=t,e)},n=function(e){var a,i,o,n=t(),s=e.getAttribute("data-name"),r=e.getAttribute("data-sizes"),d=e.getAttribute("data-label"),c=e.getAttribute("data-site");n=e.id,r&&r.length?(r=r.split(","),a=[],_map(r,function(e){e=e.split("x"),i=parseInt(e[0]),o=parseInt(e[1]),a.push([i,o])})):(e.classList.add("oop"),a=!1),this.data={id:n,name:s,sizes:a,loaded:!1,label:d,site:c},g[n]=this},r=function(e){u.cmd.push(function(){var t=o(e);g[e.data.id]=t})},s=function(e){var t=[];e.slot?(t=_(e))&&window.apstag&&window.apstag.cleared&&window.apstag.fetchBids({slots:[t],timeout:window.apstag.timeout},function(){u.cmd.push(function(){window.apstag.setDisplayBids(),u.pubads().refresh([e.slot],{changeCorrelator:!1})})}):e&&r(e)},u.cmd.push(function(){var e,t,o,n=page.getMeta("article:tag"),s=page.getMeta("author"),r=i.location.href,d=(e=a.head.querySelector(".head-gtm"),t=a.body.querySelector(".gtm"),e&&"top"===e.getAttribute("data-gtm")?"gtmtop":t&&"bottom"===t.getAttribute("data-gtm")?"gtmbottom":"");o=[],_forEach([n,s,d],function(e){_forEach(e.split(","),function(e){(e=e.trim().toLowerCase().replace(/\s/g,"-").replace(/\'|\’/g,"")).length&&o.push(e)})}),u.pubads().setTargeting("kw",o),u.pubads().setTargeting("entry_group",o),r=r.slice(r.lastIndexOf("/")+1),u.pubads().setTargeting("pn",r),u.companionAds().setRefreshUnfilledSlots(!0),u.pubads().enableAsyncRendering(),u.enableServices()}),this.load=r,this.create=function(e){return new n(e)},this.refresh=function(e){var t;_isString(e)?(t=this.getById(e),s(t)):s(e)},this.remove=function(e){var t=e.data.id;a.getElementById(t).innerHTML=""},this.getAdCount=function(e){var t,a=0,i=Object.keys(g);return _each(i,function(i){(t=g[i]).data.loaded&&t.data.label===e&&a++}),a},this.getById=function(e){return g[e]},d=_debounce(function(){var e={TopLeaderboard:1,RightColTopMPU:2,outOfPage:99,"homepageTakeover/TopLeaderboard":1},t=_sortBy(h,function(t){return e[t.data.label]||10});_forEach(t,function(e){return e.data.sizes?r(e):i.setTimeout(function(){r(e)},2e3)}),y&&window.PQ.cmd.push(()=>{try{window.PQ.loadSignals(["ids","bsc","vlp"],T)}catch(e){T(),console.error(`There has been an error loading Double Verify signals: ${e}`)}}),h=[]},10),this.addToPageLoadQueue=function(e){h.push(e),d()});function _(e){var t,a=e.sizes;return a=_intersectionWith(a,[[970,250],[970,90],[728,90],[300,600],[300,250],[320,100],[320,50]],_isEqual),e.sizes&&e.sizes.length&&(t={slotID:e.id,sizes:a,slotName:e.label}),t}function T(){i.clearTimeout(c),w=!0,_forEach(v,function(e){e()})}}]);
}, {"107":107,"114":114,"118":118,"124":124,"182":182,"205":205,"268":268,"274":274,"406":406,"409":409}];
window.modules["cid.legacy"] = [function(require,module,exports){"use strict";DS.service("$cid",function(){var r=Math.floor(100*Math.random());return function(){return"cid-"+ ++r}});
}, {}];
window.modules["client.legacy"] = [function(require,module,exports){"use strict";require("cid.legacy"),require("ads.legacy"),require("facebook.legacy"),require("aaa-module-mounting.legacy");
}, {"cid.legacy":"cid.legacy","ads.legacy":"ads.legacy","facebook.legacy":"facebook.legacy","aaa-module-mounting.legacy":"aaa-module-mounting.legacy"}];
window.modules["facebook.legacy"] = [function(require,module,exports){"use strict";DS.service("facebook",[function(){this.fb=function(i){window.FB&&window.FB[i].apply(this,Array.prototype.slice.call(arguments,1))}}]);
}, {}];
require=(function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o typeof key === 'string' && key.match(/\.legacy$/)).forEach(key => window.require(key));
}
function tryToMount(fn, el, name) {
try {
fn(el); // init the controller
} catch (e) {
const elementTag = el.outerHTML.slice(0, el.outerHTML.indexOf(el.innerHTML));
console.error(`Error initializing controller for "${name}" on "${elementTag}"`, e);
}
}
/**
* mount client.js component controllers
*/
function mountComponentModules() {
Object.keys(window.modules).filter(key => typeof key === 'string' && key.match(/\.client$/)).forEach(key => {
let controllerFn = window.require(key);
if (typeof controllerFn === 'function') {
const name = key.replace('.client', ''),
instancesSelector = `[data-uri*="_components/${name}/"]`,
defaultSelector = `[data-uri$="_components${name}"]`,
instances = document.querySelectorAll(instancesSelector),
defaults = document.querySelectorAll(defaultSelector);
for (let el of instances) {
tryToMount(controllerFn, el, name);
}
for (let el of defaults) {
tryToMount(controllerFn, el, name);
}
}
});
}
// Make sure that a `window.process.env.NODE_ENV` is available in the client for any dependencies,
// services, or components that could require it
// note: the `` value is swapped for the actual environment variable in /lib/cmd/compile/scripts.js
window.process = window.process || {};
window.process.env = window.process.env || {};
if (!window.process.env.NODE_ENV) {
window.process.env.NODE_ENV = '';
}
// note: legacy controllers that require legacy services (e.g. dollar-slice) must
// wait for DOMContentLoaded to initialize themselves, as the files themselves must be mounted first
mountLegacyServices();
mountComponentModules();
// ]]