World news – The best sketches from Carey Mulligan’s SNL episode

0
39

Carey Mulligan hosted the better than usual episode of Saturday Night Live this week, which started with a great cold open and stayed fun thanks to some solid commercial parodies. In the cold opening, which for once did not depend on impressions from celebrities or politicians, SNL returned to the question of whether it is possible for blacks to be cynical enough about the possibility of racist progress in the United States. This has been a rich area for the show in the past – see e.g. E.g. the great sketch by Dave Chappelle and Chris Rock of the 2016 election results – and this week’s version worked almost as well thanks to the great work of Kenan Thompson and Ego Nwodim.

Actresses as this week’s presenter Carey Mulligan – d. H. Women with British accents performing in period plays – inevitably acquire an aura of elegance and sophistication in the US, and Mulligan’s best sketches of the night played around with that reputation. It’s a scientific fact that nothing is less elegant or sophisticated than Irritable Bowel Syndrome, which means it was perfectly cast in the first spoof ad of the night:

After Mulligan played Type in the IBS ad, he returned in a trailer for a lesbian-era drama called Lesbian Period Drama. This is exactly the type of project she is expected to appear on. (For what it’s worth, Mulligan’s greatest sepia-toned latest piece, The Dig, isn’t about a lesbian relationship.) So one thing about this sketch is that the portrait of a woman on fire is an amazing one Is a film and the attempt by SNL to produce its score has nothing to do with the original. On the flip side, the details are fantastic, from the doctor prescribing « seagull noises, gray air, and long rocky walks » to the mandatory drawing scene.

Mulligan wasn’t part of the silliest sketch of the night that Bowen Yang did « Weekend Update » when the iceberg that sank the Titanic stopped. He doesn’t want to dwell on the past, however:

Eventually, musical guest Kid Cudi joined Chris Redd, Pete Davidson, and surprise guest Timothée Chalamet to pay tribute to flutes in rap music:

We live in an extremely strange land on a still alien planet, but for the past four years Trump’s Cavalcade of Republican Weirdos has been almost all the air out of space. However, as this week’s Cold Open shows show, SNL can make better jokes about the troubles this country is facing if they don’t have to make room for a prosthetic-powered eerie valley version of Rudy Giuliani or whoever it is. Better still, it leaves more time to joke about the real issues like flutes in rap music. If they just gave Kyle Mooney and Beck Bennett a special weekly time slot for their parodies of 90s TV shows, we’d really be on the right track.

Matthew Dessem is Brow Beats Nights and Weekends Editor and Writer of One Biography of the screenwriter and director Clyde Bruckman.

« )), c = l (y [i.size_id] .split ( » x « ). Map (function (s) {return value (s)}), 2) , s.width = c [0], s .height = c [1]), s.rubiconTargeting = (Array.isArray (i.targeting)? i.targeting: []). redu (function (e, t) {return e [t.key] = t. Values ​​[0], e}, {rpfl_elemid: f.adUnitCode}), t.push (s)): r.logError (« Rubicon: bidRequest undefined at index position: ». concat (o), n, e), t}, []). sort (function (e, t) {return (t.cpm || 0) – (e.cpm || 0)})}, getUserSyncs: Function (e, t, n, r) {if (! D&&e.iframeEnabled) {var i = «  »; return n&& « string » == typeof n.consentString&& (« boolean » == typeof n.gdprApp read? i = « ? gdpr = » .gdprApplies), « &gdpr_consent = »). concat (n.consentString): i = « ? gdpr_consent = ». concat (n.consentString)), r&& (i = «  ». concat (i? « & »: « ? », « us_privacy = ») .concat (encodeURIComponent (r))), D =! 0, {type: « iframe », url: « https: // » .concat (b.syncHost || « eus », « .rubiconproject.com / usync.html ») i}}}, transformBidParams: function (e ) {return r.convertTypes ({accountId: « number », siteId: « number », zoneId: « number »}, e)}}; Function h (e, t) {var n = obgetConfig (« pageUrl »); n = e.params.referrer? e.params.referrer: n || t.refererInfo.referer; return e.params.secure?n.replace(/^http:/i, »https: »):n Genealogie function _ (e, t) {var n = e.params; if (« video » === t) {var i = []; return n.video&&n.video.playerWidth&&n.video.playerHeight? i = [n.video.playerWidth, n.video.playerHeight]: Array.isray (r.deepAccess (e, « mediaTypes.video.playerSize »)) &&1 === e.mediaTypes.video.playerSize.length? i = e.mediaTypes.video.playerSize [0]: Array.isArray (e.sizes) &&0e.length) && (t = e.length); for (var n = 0, r = new array (t); n ‘; var i, o}}, h = function (e) {var t = 0 = e&&t.innerWidthe.length) && (t = e.length ); for (var n = 0, r = new array (t); ne.length) && (t = e.length); for (var n = 0), r = new array (t); n = e. length? {done :! 0}: {done:! 1, value: e [r]}}, e: function (e) {throw e}, f: i}} trigger new TypeError (« Invalid attempt to iterate non-iterable instance. NTo be iterable, non-array Objects have a [Symbol.iterator] () method. « )} Var o, a =! 0, s =! 1; return {s: function () {n = e [Symbol.iterator ()}, n: function () {var e = n.next (); return a = e.done, e}, e: function (e) {s =! 0, o = e}, f: function () {try {a || null == n.return || n.return ()} finally {if (s) throw o}}}} (o); try {for (us ();! (a = un ()). done;) {var f = a.value; 01e3 * e.config.storage.refreshInSeconds),! i || s || r || zero! = (d = n) &&d! == B (t)? o = e.submodule.getId (e.config, t, i): « function » == typeof e.submodule.extendId&& (o = e.submodule). extendId (e.config, t, i)), c.isPlainObject (o) && (o.id&& (U (e, o.id), i = o.id), « function » == typeof o.callback&& ( e.callback = o.callback)), i&& (e.idObj = e.submodule.decode (i, e.config))): e.config.value? e.idObj = e.config.value: (u = e.submodule.getId (e.config, t, void 0), c.isPlainObject (u) && (« function » == typeof u.callback&& (e.cal ) lback = u.callback), u.id&& (e.idObj = e.submodule.decode (u.id, e.config)))}} Function Y () {var e, t, n, r = (e = D, t = j, Array.isArray (e)? E.reduce (function (e, n) {return! N || c.isEmptyStr (n.name) || (! N.storage || c.isEmptyStr (n.storage.type) || c.isEmptyStr (n.storage.name) || -1 === t.indexOf (n.storage.type)) &&! c.isPlainObject (n.value) && (n . Memory || n.value) || e.push (n), e}, []): []); r.length&& (n = k.filter (function (e) {return! i () (P, function (t) {return t.name === e.name})}), P = n.map (function (e) {var t = i () (r, function (t) {return t.name = == e.name}); return e.findRootDomain = z, t? {Submodule: e, config: t, callback : void 0, idObj: void 0}: null}). filter (function (e) {return null! == e}),! x&&P.length&& (object (ua) (). requestBids.before (G, 40) , c.logInfo («  ». concat (S, « – usersync config updated for ») .concat (P.length, « submodules: »), P.map (function (s) {return e.submodule.name}) ), x =! 0))} Function $ (e) {i () (k, Function (t) {return t.name === e.nam e}) || (k.push (e), Y ())} function X (e) {P = [], x =! (D = []), y = void 0, -1! == (j = [w.localStorageIsEnabled ()? O: null, w.cookiesAreEnabled ()? A: null] .filter (function (e) {return null! == e})). indexOf (A) &&w.getCookie (C.)? c.logInfo («  ». concat (S, « – Opt-out cookie found, exit module »)): – 1! == j.indexOf (O) &&w.getDataFromLocalStorage (C)? c.logInfo («  » .concat (S, « – Opt-Out localStorage found, exit module »)) 🙁 e.getConfig (function (s) {var t = e.userSync; t&&t.userIds&& (D = t. userIds, h = c .isNumber (t.syncDelay)? t.syncDelay: I, _ = c.isNumber (t.auctionDelay)? t.auctionDelay: E, Y ())}), Object (ua) (). getUserIds = V, Object (ua) (). getUserIdsAsEids = K, Object (ua) (). refreshUserIds = H)} X (ob), Object (pc) (« userId », $)}}, [894]) , pbjs.processQueue ();
}, {}];
window.modules [« visibility.legacy »] = [function (required, module, export) {« use strict »; DS.service (« $ visibility », [« $ document », « $ window », « _ throttle », « Eventify », function (e, t, n, i) {var o, r, h = []; Function s (e, t) {return et? E: t} Function d (e, t, n) {! E.preload&&e.preloadThreshhold&&function (e, t, n, i) {return t.top = e.shownThreshold&&! e.seen?, new r (« shown », t))}, 15)) :(! n || i1&& (h = e (r, Math.floor (n / o), i-1, o)) , h}, this.getVerticallyVisiblePixels = f, this.getViewportHeight = function () {return t.innerHeight || e.documentElement.clientHeight || e.body.clientHeight}, this.getViewportWidth = function () {return t.innerWidth || e.documentElement.clientWidth || e.body.clientWidth}, this.isElementNotHidden = u, this.isElementInViewport = function (n) {var i = n.getBoundingClientRect (); return i.top> = 0&&i.left> = 0&CSE = o.length) return {done: true}; return {done: false, value: o [i]}; }, e: function e (_e) {throw _e; }, f: F}; } throw new TypeError (« Invalid attempt to iterate a non-iterable instance. nTo be iterable, non-array objects must have a [Symbol.iterator] () method. »); } var normalCompletion = true, didErr = false, err; return {s: function s () {it = o [symbol.iterator] (); }, n: function n () {var step = it.next (); normalCompletion = step.done; Regression; }, e: function e (_e2) {didErr = true; err = _e2; }, f: function f () {try {if (! normalCompletion && it.return! = null) it.return (); } finally {if (didErr) throw err; }}}; }}

Function _unsupportedIterableToArray (o, minLen) {if (! O) return; if (typeof o === « string ») return _arrayLikeToArray (o, minLen); var n = Object.prototype.toString.call (o) .slice (8, -1); if (n === « Object » && o.constructor) n = o.constructor.name; if (n === « Map » || n === « Set ») returns Array.from (o); if (n === « Arguments » || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray (o, minLen); }}

Function _arrayLikeToArray (arr, len) {if (len == null || len> arr.length) len = arr.length; for (var i = 0, arr2 = new array (len); i

Ref: https://slate.com

Donnez votre avis et abonnez-vous pour plus d’infos

[gs-fb-comments]

Vidéo du jour: