Profile
Subscribe

After a brief hiatus (and an Emmy win), John Oliver returned to Last Week Tonight on Sunday with a less-than-uplifting take on Amy Coney Barrett’s likely confirmation to the Supreme Court: “If things seem hopeless right now, its because, to be honest, they basically are.”

Oliver reflected on the death of Ruth Bader Ginsburg and the cravenness of the Republican rush to fill her open seat less than two months before the presidential election, spending the majority of the segment examining Mitch McConnell’s agenda to pack the courts with conservative judges. He also explained how we got to a place where Republicans can say they represent the will of the people while leaving aside the electorate’s opposition to their party platform.

Ted Cruz accurately summed up the party’s inaccurate line, saying that the “American people elected President Trump and a Republican majority because we want the Constitution and Bill of Rights protected and that is our job and what we need to do.” For him, Oliver composed a little poem:

The best of movies, TV, books, music, and more, delivered to your inbox three times a week.

But the mandate that Republicans claim they have is largely the reflection of, Oliver says, “the deeply undemocratic nature of American institutions.” Everything from the “winner-take-all approach” of electoral college to the makeup of the Senate (where the average Black American has 75% of the representation that of a white American) to plain old-fashioned gerrymandering has brought us to a place where a president that has lost the popular vote will have appointed “a quarter of the federal judiciary and a third of the Supreme Court and his choices will have been rubber-stamped by a Senate Republican majority representing 15 million fewer people than the Democratic minority.”

And while Oliver looked ahead to future battles—like abolishing the electoral college and granting statehood to Washington, D.C. and Puerto Rico—he acknowledged that Barrett’s likely confirmation is nothing less than “a generational battle, and the heartbreaking thing is, we lost […] It’s going to hurt for a long time, for a lot of people, in ways that are going to take awhile to fully comprehend. But the next battle has to start right now.”

Readers like you make our work possible. Help us continue to provide the reporting, commentary, and criticism you won’t find anywhere else.

You’ve run out of free articles. Join Slate Plus to continue reading, and you’ll get unlimited access to all our work—and support Slate’s independent journalism. You can cancel anytime.

Start Free Trial Now

Already a member?
Sign in here.

Start Free Trial Now

Already a member?
Sign in here.

Slate is published by The Slate Group, a Graham Holdings Company.
All contents © 2020 The Slate Group LLC. All rights reserved.

Slate relies on advertising to support our journalism. If you value our work, please disable your ad blocker.

By joining Slate Plus you support our work and get exclusive content. And you’ll never see this message again.

“)), n = v(f[r.size_id].split(“x”).map(function (e) {
return Number(e);
}), 2), i.width = n[0], i.height = n[1]), i.rubiconTargeting = (Array.isArray(r.targeting) ? r.targeting : []).reduce(function (e, r) {
return e[r.key] = r.values[0], e;
}, {
rpfl_elemid: s.adUnitCode
}), e.push(i)) : g.logError(“Rubicon: bidRequest undefined at index position:”.concat(t), c, d), e;
}, []).sort(function (e, r) {
return (r.cpm || 0) – (e.cpm || 0);
});
},
getUserSyncs: function getUserSyncs(e, r, t, i) {
if (!R && e.iframeEnabled) {
var n = “”;
return t && “string” == typeof t.consentString && (“boolean” == typeof t.gdprApplies ? n += “?gdpr=”.concat(Number(t.gdprApplies), “&gdpr_consent=”).concat(t.consentString) : n += “?gdpr_consent=”.concat(t.consentString)), i && (n += “”.concat(n ? “&” : “?”, “us_privacy=”).concat(encodeURIComponent(i))), R = !0, {
type: “iframe”,
url: a + n
};
}
},
transformBidParams: function transformBidParams(e) {
return g.convertTypes({
accountId: “number”,
siteId: “number”,
zoneId: “number”
}, e);
}
};

function _(e, r) {
var t,
i = 0 e.length) && (t = e.length);

for (var r = 0, n = new Array(t); r ‘;
var r, n;
};
};

var a = function a(e) {
var r = 0 = e && r.innerWidth r.length) && (e = r.length);

for (var t = 0, n = new Array(e); t b ? a : b;
}
/**
* Fast loop through watched elements
*/

function onScroll() {
list.forEach(updateVisibility);
}
/**
* updates seen property
* @param {Visble} item
* @param {{}} evt
* @fires Visible#shown
* @fires Visible#hidden
*/

function updateSeen(item, evt) {
var px = evt.visiblePx,
percent = evt.visiblePercent; // if some pixels are visible and we’re greater/equal to threshold

if (px && percent >= item.shownThreshold && !item.seen) {
item.seen = true;
setTimeout(function () {
item.trigger(“shown”, new VisibleEvent(“shown”, evt));
}, 15); // if no pixels or percent is less than threshold
} else if ((!px || percent = 0 && rect.left >= 0 && rect.bottom 1) {
result += getLinearSpacialHash(remainder, Math.floor(stepSize / base), optimalK – 1, base);
}

return result;
}
/**
* @param {ClientRect} rect
* @param {number} innerHeight
* @returns {number}
*/

function getVerticallyVisiblePixels(rect, innerHeight) {
return min(innerHeight, max(rect.bottom, 0)) – min(max(rect.top, 0), innerHeight);
}
/**
* Get offset of element relative to entire page
*
* @param {Element} el
* @returns {{left: number, top: number}}
* @see http://jsperf.com/offset-vs-getboundingclientrect/7
*/

function getPageOffset(el) {
var offsetLeft = el.offsetLeft,
offsetTop = el.offsetTop;

while (el = el.offsetParent) {
offsetLeft += el.offsetLeft;
offsetTop += el.offsetTop;
}

return {
left: offsetLeft,
top: offsetTop
};
}
/**
* Create a new Visible class to observe when elements enter and leave the viewport
*
* Call destroy function to stop listening (this is until we have better support for watching for Node Removal)
* @param {Element} el
* @param {{shownThreshold: number, hiddenThreshold: number}} [options]
* @class
* @example this.visible = new $visibility.Visible(el);
*/

Visible = function Visible(el, options) {
options = options || {};
this.el = el;
this.seen = false;
this.preload = false;
this.preloadThreshhold = options && options.preloadThreshhold || 0;
this.shownThreshold = options && options.shownThreshold || 0;
this.hiddenThreshold = options && min(options.shownThreshold, options.hiddenThreshold) || 0;
list.push(this);
updateVisibility(this); // set immediately to visible or not
};

Visible.prototype = {
/**
* Stop triggering.
*/
destroy: function destroy() {
// remove from list
list.splice(list.indexOf(this), 1);
}
/**
* @name Visible#on
* @function
* @param {‘shown’|’hidden’} e EventName
* @param {function} cb Callback
*/

/**
* @name Visible#trigger
* @function
* @param {‘shown’|’hidden’} e
* @param {{}}
*/

};
Eventify.enable(Visible.prototype);

VisibleEvent = function VisibleEvent(type, options) {
var _this = this;

this.type = type;
Object.keys(options).forEach(function (key) {
_this[key] = options[key];
});
}; // listen for scroll events (throttled)

$document.addEventListener(“scroll”, _throttle(onScroll, 200)); // public

this.getPageOffset = getPageOffset;
this.getLinearSpacialHash = getLinearSpacialHash;
this.getVerticallyVisiblePixels = getVerticallyVisiblePixels;
this.getViewportHeight = getViewportHeight;
this.getViewportWidth = getViewportWidth;
this.isElementNotHidden = isElementNotHidden;
this.isElementInViewport = isElementInViewport;
this.Visible = Visible;
}]);
}, {}];
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

Source: https://news.google.com/__i/rss/rd/articles/CBMiZGh0dHBzOi8vc2xhdGUuY29tL2N1bHR1cmUvMjAyMC8wOS9qb2huLW9saXZlci1zdXByZW1lLWNvdXJ0LWFteS1jb25leS1iYXJyZXR0LWxhc3Qtd2Vlay10b25pZ2h0Lmh0bWzSAWNodHRwczovL3NsYXRlLmNvbS9jdWx0dXJlLzIwMjAvMDkvam9obi1vbGl2ZXItc3VwcmVtZS1jb3VydC1hbXktY29uZXktYmFycmV0dC1sYXN0LXdlZWstdG9uaWdodC5hbXA?oc=5

News – John Oliver Says the Supreme Court Fight Is Already Lost—but Others Are Just Beginning