The penultimate episode of a TV season or show is often the most important installment. It’s the moment when a series will either successfully bring its disparate pieces together or when the story structure will buckle under their weight. For “Going Rogue,” this means finally killing JP and bringing enough of the show’s characters to a place where they could be the who, as they say, dunnit. There’s a lot of them. Because when you’re the kind of man who has two black eyes at the same time from two separate incidents, the list of people who might have murdered you is not short. After nine hours of articulating just how good JP is at hurting people, Bad Sisters revels in the possibilities. Let’s consider each one …
Let’s get the B’s out of the way first. Becka. Muddy boots aside, I can’t imagine Becka was the one to off JP, mostly because I can’t imagine Bad Sisters making her suffer more than she already has. Becka spent most of the episode in an emotional tailspin after realizing that she accidentally killed Minna. Sure, she also spends most of the episode drunk, but Becka is not a violent person — even when saturated in whiskey. That being said, if it was Becka, that would put Matt in an even more difficult situation.
Ben. Personally, I’ll be disappointed if Ben is the one to have done the deed. Sure, it would let the Garvey sisters off the hook, but we barely know this dude past his very important task of being Ursula’s ridiculously devoted lover. Plus his line about JP, how without him “we could go back to the way we were,” seemed to be ADR’d. You won’t get me to fall for your most obvious red herrings, show!
Bibi. We see Bibi running through the woods the night of JP’s death — something she doesn’t tell her sisters about. But I’m not getting killer vibes from her this week. At the start of this show, Bibi was the sister who got the murder ball rolling. While her sisters were merely imagining ways to kill their brother-in-law as a way to pass their Christmas, Bibi was stealing books on mushrooms from the library to plan it. But since then, we’ve seen Bibi work through her issues. She still wants to kill JP, but she’s not quite as single-minded about it. Still, it seems like she knows something. Could she have seen what happened to JP?
Eva. Going into their weekend away for Grace’s birthday, Eva is the Garvey sister with the most forward murder momentum. She tasks Ursula with picking up some pentobarbital from her dodgy vet and skips out on dinner at the hotel. Did she leave to slip some drugs into JP’s wine? (Yes, I had to Google “pentobarbital taste” to write this recap. Apparently, it is extremely bitter.)
Roger. Roger doesn’t need to kill JP. He already got his revenge by telling JP he forgives him. Honestly, this is the worst thing anyone has ever done to JP in the history of this show about people trying to kill him. You can see how much the act shakes JP, especially because he can read Roger’s sincerity. JP has a comeback, needing to keep what he sees as the higher ground: “People like you, Roger, don’t get to forgive people like me. Forgiveness flows down. Remember that.” But it’s too late; the damage has already been done. Roger cares about JP’s immortal soul.
Grace. I’m still wondering if Grace is the one ultimately responsible for JP’s death, whatever form that may take. While JP has hurt many people over the course of this show, he’s hurt Grace the most. She loves and cares for him and, in return, he does everything he can to keep her small and isolated. On her birthday, he takes her away — not because he thinks it will make her happy but because he wants to keep her from her sisters. “You know how much it hurts when I feel you love them more than me,” he says to Grace on her birthday after she’s finished making him dinner. It’s not love; it’s manipulation in the pursuit of power, and JP is damn good at it. We’ve seen cracks in Grace’s happy-housewife façade throughout the season. Did she finally explode? Was it realizing what JP has done to sweet Roger that brought the whole house down?
Or maybe the ghost of Harry Styles the kitten did it, reaching his soft spirit-paw out from the cat underworld to seek vengeance for his untimely death. I don’t think we can fully rule it out.
Whatever happened to JP, we’re well into the messy repercussions of his death in the present-day story line. Matt and Becka are in love but on opposite sides of a high-stakes insurance claim. Tom finally tells Theresa what is going on with Claflin & Sons, and she takes it upon herself to get out of bed to investigate, leading to a seizure. (Great, Tom is never going to be emotionally honest ever, ever again.) This spurs Matt to put his back into investigating for the first time, and our bassist is actually really good at it. Now the Brothers Claflin officially know that the Garvey sisters weren’t all together the night of JP’s death. In fact, they were all apart.
So how does “Going Rogue” do as a penultimate episode? For a show that has weaved its web so intricately, this straightforward tale of what happened in the days leading up to JP’s death falls a bit flat. It’s important backstory, but Bad Sisters is usually operating on so many levels, jumping back and forth between its two timelines and tying them together in character and theme. Most of “Going Rogue,” however, takes place in the past tense. The episode’s relative linearity and traditional whodunnit structure feel like a bit of a come-down from the show’s typical complexity. This isn’t to say it is a bad episode or that there aren’t multiple moments of brilliance — this show is so damn good that, unless it seriously goes off the rails in its final episode, critiques will only ever be nitpicks. Like every other episode of this killer story, it left me desperate to find out how it ends.
Sisterly Advice
• “We’re not a firing squad. We always knew one of us would get the final bullet.” Um, I didn’t know that.
• Fine, give Claes Bang the Oscar or whatever. The scene that sees him finding Minna, dead as she reaches for the corpse of her late husband, is so incredibly well acted. He laughs. He sobs. I believe it all. This is an important reminder that however monstrously and unfeeling JP might act, he feels things deeply. It’s his inability to share those feelings with others that has made him so unhappy.
• As affected as JP is by his mother’s death, outwardly, he bounces back scarily quickly, driving Becka away and then proceeding to blow dry his mother out. Repression at its worst.
• “None of this would have happened if the prick hadn’t locked his dead dad in the freezer.” I mean … kind of? The moral complexity of Minna’s death is a doozy, and I’m not sure Bad Sisters really does it justice.
• When Eva and Becka flee Minna’s house after JP confronts them in the basement, Becka literally just takes off into the night. I don’t think this was meant to be funny, but I found it hilarious.
• JP throws his dad’s dead body into the pond — along with all of his glass eyes. It makes for a good shot, but how deep could Minna’s landscaped pond possibly be?
• Matt and Becka try not caring about each other on for size; they’re not very good at it.
• “We can live in a box outside the back of Harvey Norman. I don’t give a shit, as long as I have you both.” Theresa is pretty great.
• “I’d like a face-to-face with those Garveys.” I, too, would like to see Theresa have a face-to-face with the Garveys.
• “What’s she like?” “Aside from being an accomplice to murder? I don’t know, fit?” Tom on Becka.
• Funeral chatter: “Ursula isn’t coming.” “Why? It’s so much fun.”
• Damn, they built that cabin back quickly.
• Gerald is such an idiot. His form of casual misogyny is so common and so frustrating.
• “Get away from my car or I will mow you down like roadkill.” Eva always says the coolest things.
• Tom goes to meet with the solicitor to find out just how screwed Claflin & Sons is. This is a healthy, mature choice, and Tom will probably never make one of these ever again because the moment he left home, Theresa collapsed.
• “No point in having a solicitor as a pal if you don’t use them.” “You don’t have pals.” “That’s true.” Theresa, like, really knows and loves Tom. It’s cool to have this show that centers such a dysfunctional and harmful marriage also have a few good examples of what healthy partnership looks like. We also see it in Bibi’s marriage.
• Theresa not only gets out of bed but puts on actual clothes, which honestly seems even harder.
• “She had a seizure. I just had a 23-year-old with the emotional depth of a Chihuahua lay it out for me.”
• This episode really wanted to remind us how beautiful Ireland is.
• “Why did you do it? You were my friend.” “Well perhaps because I didn’t like you sniffing around my family because we are not friends. And we never were. You’re just the sad old man from across the street that we tolerate because we’re nice people and because you probably would fiddle with kids if you could, wouldn’t you?” The way that JP speaks — like he can rewrite reality to his vision of the world as it should be. The way the systems around him allow him to.
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()}});
}, {"1":1,"6":6,"12":12,"35":35,"40":40}];
window.modules["global-nav.client"] = [function(require,module,exports){"use strict";const dom=require(4),auth=require(12),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(1),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 o=t.querySelector(".dropdown");!n||t.contains(e.target)&&27!==e.keyCode||o.classList.remove("open")})}function gtmSendReport(e,n,t){let o={eventCategory:"ecommerce",eventAction:"componentClick",brand:e,dimension23:"global-nav",list:pageUri,pageZone:"header",variant:"nav-link"};"global-nav-link"===t&&(o.eventLabel=n.href),gtm.reportNow(o)}function updateElementTargetUrlsIfQueryStrings(e){if(searchString){const n=new URLSearchParams(searchString);let t=e.href;if(t.includes("?")){const o=t.split("?"),i=new URLSearchParams(o[1]);for(let e of n.entries())i.set(e[0],e[1]);t=`${o[0]}?${i.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()&&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;
}, {"1":1,"4":4,"12":12,"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();
// ]]