CINXE.COM

Barber movie review & film summary (2023) | Roger Ebert

<!doctype html> <html lang="en-US" prefix="og: https://ogp.me/ns#"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> <script type="text/javascript"> ;window.NREUM||(NREUM={});NREUM.init={session_replay:{enabled:true,block_selector:'',mask_text_selector:'*',sampling_rate:10.0,error_sampling_rate:10.0,mask_all_inputs:true,collect_fonts:true,inline_images:false,inline_stylesheet:true,mask_input_options:{}},distributed_tracing:{enabled:true},privacy:{cookies_enabled:true},ajax:{deny_list:["bam.ndata.net"]}}; ;NREUM.loader_config={accountID:"4588471",trustKey:"4588471",agentID:"1134507735",licenseKey:"NRJS-fc5e229d30368c5c18e",applicationID:"1134507735"}; ;NREUM.info={beacon:"bam.nr-data.net",errorBeacon:"bam.nr-data.net",licenseKey:"NRJS-fc5e229d30368c5c18e",applicationID:"1134507735",sa:1}; ;/*! For license information please see nr-loader-spa-1.278.2.min.js.LICENSE.txt */ (()=>{var e,t,r={8122:(e,t,r)=>{"use strict";r.d(t,{a:()=>i});var n=r(944);function i(e,t){try{if(!e||"object"!=typeof e)return(0,n.R)(3);if(!t||"object"!=typeof t)return(0,n.R)(4);const r=Object.create(Object.getPrototypeOf(t),Object.getOwnPropertyDescriptors(t)),o=0===Object.keys(r).length?e:r;for(let a in o)if(void 0!==e[a])try{if(null===e[a]){r[a]=null;continue}Array.isArray(e[a])&&Array.isArray(t[a])?r[a]=Array.from(new Set([...e[a],...t[a]])):"object"==typeof e[a]&&"object"==typeof t[a]?r[a]=i(e[a],t[a]):r[a]=e[a]}catch(e){(0,n.R)(1,e)}return r}catch(e){(0,n.R)(2,e)}}},2555:(e,t,r)=>{"use strict";r.d(t,{Vp:()=>c,fn:()=>s,x1:()=>u});var n=r(384),i=r(8122);const o={beacon:n.NT.beacon,errorBeacon:n.NT.errorBeacon,licenseKey:void 0,applicationID:void 0,sa:void 0,queueTime:void 0,applicationTime:void 0,ttGuid:void 0,user:void 0,account:void 0,product:void 0,extra:void 0,jsAttributes:{},userAttributes:void 0,atts:void 0,transactionName:void 0,tNamePlain:void 0},a={};function s(e){try{const t=c(e);return!!t.licenseKey&&!!t.errorBeacon&&!!t.applicationID}catch(e){return!1}}function c(e){if(!e)throw new Error("All info objects require an agent identifier!");if(!a[e])throw new Error("Info for ".concat(e," was never set"));return a[e]}function u(e,t){if(!e)throw new Error("All info objects require an agent identifier!");a[e]=(0,i.a)(t,o);const r=(0,n.nY)(e);r&&(r.info=a[e])}},9417:(e,t,r)=>{"use strict";r.d(t,{D0:()=>p,gD:()=>m,xN:()=>g});var n=r(3333),i=r(993);const o=e=>{if(!e||"string"!=typeof e)return!1;try{document.createDocumentFragment().querySelector(e)}catch{return!1}return!0};var a=r(2614),s=r(944),c=r(384),u=r(8122);const d="[data-nr-mask]",l=()=>{const e={feature_flags:[],experimental:{marks:!1,measures:!1,resources:!1},mask_selector:"*",block_selector:"[data-nr-block]",mask_input_options:{color:!1,date:!1,"datetime-local":!1,email:!1,month:!1,number:!1,range:!1,search:!1,tel:!1,text:!1,time:!1,url:!1,week:!1,textarea:!1,select:!1,password:!0}};return{ajax:{deny_list:void 0,block_internal:!0,enabled:!0,autoStart:!0},distributed_tracing:{enabled:void 0,exclude_newrelic_header:void 0,cors_use_newrelic_header:void 0,cors_use_tracecontext_headers:void 0,allowed_origins:void 0},get feature_flags(){return e.feature_flags},set feature_flags(t){e.feature_flags=t},generic_events:{enabled:!0,autoStart:!0},harvest:{interval:30},jserrors:{enabled:!0,autoStart:!0},logging:{enabled:!0,autoStart:!0,level:i.p_.INFO},metrics:{enabled:!0,autoStart:!0},obfuscate:void 0,page_action:{enabled:!0},page_view_event:{enabled:!0,autoStart:!0},page_view_timing:{enabled:!0,autoStart:!0},performance:{get capture_marks(){return e.feature_flags.includes(n.$v.MARKS)||e.experimental.marks},set capture_marks(t){e.experimental.marks=t},get capture_measures(){return e.feature_flags.includes(n.$v.MEASURES)||e.experimental.measures},set capture_measures(t){e.experimental.measures=t},resources:{get enabled(){return e.feature_flags.includes(n.$v.RESOURCES)||e.experimental.resources},set enabled(t){e.experimental.resources=t},asset_types:[],first_party_domains:[],ignore_newrelic:!0}},privacy:{cookies_enabled:!0},proxy:{assets:void 0,beacon:void 0},session:{expiresMs:a.wk,inactiveMs:a.BB},session_replay:{autoStart:!0,enabled:!1,preload:!1,sampling_rate:10,error_sampling_rate:100,collect_fonts:!1,inline_images:!1,fix_stylesheets:!0,mask_all_inputs:!0,get mask_text_selector(){return e.mask_selector},set mask_text_selector(t){o(t)?e.mask_selector="".concat(t,",").concat(d):""===t||null===t?e.mask_selector=d:(0,s.R)(5,t)},get block_class(){return"nr-block"},get ignore_class(){return"nr-ignore"},get mask_text_class(){return"nr-mask"},get block_selector(){return e.block_selector},set block_selector(t){o(t)?e.block_selector+=",".concat(t):""!==t&&(0,s.R)(6,t)},get mask_input_options(){return e.mask_input_options},set mask_input_options(t){t&&"object"==typeof t?e.mask_input_options={...t,password:!0}:(0,s.R)(7,t)}},session_trace:{enabled:!0,autoStart:!0},soft_navigations:{enabled:!0,autoStart:!0},spa:{enabled:!0,autoStart:!0},ssl:void 0,user_actions:{enabled:!0}}},f={},h="All configuration objects require an agent identifier!";function p(e){if(!e)throw new Error(h);if(!f[e])throw new Error("Configuration for ".concat(e," was never set"));return f[e]}function g(e,t){if(!e)throw new Error(h);f[e]=(0,u.a)(t,l());const r=(0,c.nY)(e);r&&(r.init=f[e])}function m(e,t){if(!e)throw new Error(h);var r=p(e);if(r){for(var n=t.split("."),i=0;i<n.length-1;i++)if("object"!=typeof(r=r[n[i]]))return;r=r[n[n.length-1]]}return r}},5603:(e,t,r)=>{"use strict";r.d(t,{a:()=>c,o:()=>s});var n=r(384),i=r(8122);const o={accountID:void 0,trustKey:void 0,agentID:void 0,licenseKey:void 0,applicationID:void 0,xpid:void 0},a={};function s(e){if(!e)throw new Error("All loader-config objects require an agent identifier!");if(!a[e])throw new Error("LoaderConfig for ".concat(e," was never set"));return a[e]}function c(e,t){if(!e)throw new Error("All loader-config objects require an agent identifier!");a[e]=(0,i.a)(t,o);const r=(0,n.nY)(e);r&&(r.loader_config=a[e])}},3371:(e,t,r)=>{"use strict";r.d(t,{V:()=>f,f:()=>l});var n=r(8122),i=r(384),o=r(6154),a=r(9324);let s=0;const c={buildEnv:a.F3,distMethod:a.Xs,version:a.xv,originTime:o.WN},u={customTransaction:void 0,disabled:!1,isolatedBacklog:!1,loaderType:void 0,maxBytes:3e4,onerror:void 0,ptid:void 0,releaseIds:{},appMetadata:{},session:void 0,denyList:void 0,timeKeeper:void 0,obfuscator:void 0,harvester:void 0},d={};function l(e){if(!e)throw new Error("All runtime objects require an agent identifier!");if(!d[e])throw new Error("Runtime for ".concat(e," was never set"));return d[e]}function f(e,t){if(!e)throw new Error("All runtime objects require an agent identifier!");d[e]={...(0,n.a)(t,u),...c},Object.hasOwnProperty.call(d[e],"harvestCount")||Object.defineProperty(d[e],"harvestCount",{get:()=>++s});const r=(0,i.nY)(e);r&&(r.runtime=d[e])}},9324:(e,t,r)=>{"use strict";r.d(t,{F3:()=>i,Xs:()=>o,Yq:()=>a,xv:()=>n});const n="1.278.2",i="PROD",o="CDN",a="^2.0.0-alpha.17"},6154:(e,t,r)=>{"use strict";r.d(t,{A4:()=>s,OF:()=>d,RI:()=>i,WN:()=>h,bv:()=>o,gm:()=>a,lR:()=>f,m:()=>u,mw:()=>c,sb:()=>l});var n=r(1863);const i="undefined"!=typeof window&&!!window.document,o="undefined"!=typeof WorkerGlobalScope&&("undefined"!=typeof self&&self instanceof WorkerGlobalScope&&self.navigator instanceof WorkerNavigator||"undefined"!=typeof globalThis&&globalThis instanceof WorkerGlobalScope&&globalThis.navigator instanceof WorkerNavigator),a=i?window:"undefined"!=typeof WorkerGlobalScope&&("undefined"!=typeof self&&self instanceof WorkerGlobalScope&&self||"undefined"!=typeof globalThis&&globalThis instanceof WorkerGlobalScope&&globalThis),s="complete"===a?.document?.readyState,c=Boolean("hidden"===a?.document?.visibilityState),u=""+a?.location,d=/iPad|iPhone|iPod/.test(a.navigator?.userAgent),l=d&&"undefined"==typeof SharedWorker,f=(()=>{const e=a.navigator?.userAgent?.match(/Firefox[/\s](\d+\.\d+)/);return Array.isArray(e)&&e.length>=2?+e[1]:0})(),h=Date.now()-(0,n.t)()},7295:(e,t,r)=>{"use strict";r.d(t,{Xv:()=>a,gX:()=>i,iW:()=>o});var n=[];function i(e){if(!e||o(e))return!1;if(0===n.length)return!0;for(var t=0;t<n.length;t++){var r=n[t];if("*"===r.hostname)return!1;if(s(r.hostname,e.hostname)&&c(r.pathname,e.pathname))return!1}return!0}function o(e){return void 0===e.hostname}function a(e){if(n=[],e&&e.length)for(var t=0;t<e.length;t++){let r=e[t];if(!r)continue;0===r.indexOf("http://")?r=r.substring(7):0===r.indexOf("https://")&&(r=r.substring(8));const i=r.indexOf("/");let o,a;i>0?(o=r.substring(0,i),a=r.substring(i)):(o=r,a="");let[s]=o.split(":");n.push({hostname:s,pathname:a})}}function s(e,t){return!(e.length>t.length)&&t.indexOf(e)===t.length-e.length}function c(e,t){return 0===e.indexOf("/")&&(e=e.substring(1)),0===t.indexOf("/")&&(t=t.substring(1)),""===e||e===t}},1687:(e,t,r)=>{"use strict";r.d(t,{Ak:()=>c,Ze:()=>l,x3:()=>u});var n=r(7836),i=r(3606),o=r(860),a=r(2646);const s={};function c(e,t){const r={staged:!1,priority:o.P3[t]||0};d(e),s[e].get(t)||s[e].set(t,r)}function u(e,t){e&&s[e]&&(s[e].get(t)&&s[e].delete(t),h(e,t,!1),s[e].size&&f(e))}function d(e){if(!e)throw new Error("agentIdentifier required");s[e]||(s[e]=new Map)}function l(e="",t="feature",r=!1){if(d(e),!e||!s[e].get(t)||r)return h(e,t);s[e].get(t).staged=!0,f(e)}function f(e){const t=Array.from(s[e]);t.every((([e,t])=>t.staged))&&(t.sort(((e,t)=>e[1].priority-t[1].priority)),t.forEach((([t])=>{s[e].delete(t),h(e,t)})))}function h(e,t,r=!0){const o=e?n.ee.get(e):n.ee,s=i.i.handlers;if(!o.aborted&&o.backlog&&s){if(r){const e=o.backlog[t],r=s[t];if(r){for(let t=0;e&&t<e.length;++t)p(e[t],r);Object.entries(r).forEach((([e,t])=>{Object.values(t||{}).forEach((t=>{t[0]?.on&&t[0]?.context()instanceof a.y&&t[0].on(e,t[1])}))}))}}o.isolatedBacklog||delete s[t],o.backlog[t]=null,o.emit("drain-"+t,[])}}function p(e,t){var r=e[1];Object.values(t[r]||{}).forEach((t=>{var r=e[0];if(t[0]===r){var n=t[1],i=e[3],o=e[2];n.apply(i,o)}}))}},7836:(e,t,r)=>{"use strict";r.d(t,{P:()=>c,ee:()=>u});var n=r(384),i=r(8990),o=r(3371),a=r(2646),s=r(5607);const c="nr@context:".concat(s.W),u=function e(t,r){var n={},s={},d={},l=!1;try{l=16===r.length&&(0,o.f)(r).isolatedBacklog}catch(e){}var f={on:p,addEventListener:p,removeEventListener:function(e,t){var r=n[e];if(!r)return;for(var i=0;i<r.length;i++)r[i]===t&&r.splice(i,1)},emit:function(e,r,n,i,o){!1!==o&&(o=!0);if(u.aborted&&!i)return;t&&o&&t.emit(e,r,n);for(var a=h(n),c=g(e),d=c.length,l=0;l<d;l++)c[l].apply(a,r);var p=v()[s[e]];p&&p.push([f,e,r,a]);return a},get:m,listeners:g,context:h,buffer:function(e,t){const r=v();if(t=t||"feature",f.aborted)return;Object.entries(e||{}).forEach((([e,n])=>{s[n]=t,t in r||(r[t]=[])}))},abort:function(){f._aborted=!0,Object.keys(f.backlog).forEach((e=>{delete f.backlog[e]}))},isBuffering:function(e){return!!v()[s[e]]},debugId:r,backlog:l?{}:t&&"object"==typeof t.backlog?t.backlog:{},isolatedBacklog:l};return Object.defineProperty(f,"aborted",{get:()=>{let e=f._aborted||!1;return e||(t&&(e=t.aborted),e)}}),f;function h(e){return e&&e instanceof a.y?e:e?(0,i.I)(e,c,(()=>new a.y(c))):new a.y(c)}function p(e,t){n[e]=g(e).concat(t)}function g(e){return n[e]||[]}function m(t){return d[t]=d[t]||e(f,t)}function v(){return f.backlog}}(void 0,"globalEE"),d=(0,n.Zm)();d.ee||(d.ee=u)},2646:(e,t,r)=>{"use strict";r.d(t,{y:()=>n});class n{constructor(e){this.contextId=e}}},9908:(e,t,r)=>{"use strict";r.d(t,{d:()=>n,p:()=>i});var n=r(7836).ee.get("handle");function i(e,t,r,i,o){o?(o.buffer([e],i),o.emit(e,t,r)):(n.buffer([e],i),n.emit(e,t,r))}},3606:(e,t,r)=>{"use strict";r.d(t,{i:()=>o});var n=r(9908);o.on=a;var i=o.handlers={};function o(e,t,r,o){a(o||n.d,i,e,t,r)}function a(e,t,r,i,o){o||(o="feature"),e||(e=n.d);var a=t[o]=t[o]||{};(a[r]=a[r]||[]).push([e,i])}},3878:(e,t,r)=>{"use strict";function n(e,t){return{capture:e,passive:!1,signal:t}}function i(e,t,r=!1,i){window.addEventListener(e,t,n(r,i))}function o(e,t,r=!1,i){document.addEventListener(e,t,n(r,i))}r.d(t,{DD:()=>o,jT:()=>n,sp:()=>i})},5607:(e,t,r)=>{"use strict";r.d(t,{W:()=>n});const n=(0,r(9566).bz)()},9566:(e,t,r)=>{"use strict";r.d(t,{LA:()=>s,ZF:()=>c,bz:()=>a,el:()=>u});var n=r(6154);const i="xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx";function o(e,t){return e?15&e[t]:16*Math.random()|0}function a(){const e=n.gm?.crypto||n.gm?.msCrypto;let t,r=0;return e&&e.getRandomValues&&(t=e.getRandomValues(new Uint8Array(30))),i.split("").map((e=>"x"===e?o(t,r++).toString(16):"y"===e?(3&o()|8).toString(16):e)).join("")}function s(e){const t=n.gm?.crypto||n.gm?.msCrypto;let r,i=0;t&&t.getRandomValues&&(r=t.getRandomValues(new Uint8Array(e)));const a=[];for(var s=0;s<e;s++)a.push(o(r,i++).toString(16));return a.join("")}function c(){return s(16)}function u(){return s(32)}},2614:(e,t,r)=>{"use strict";r.d(t,{BB:()=>a,H3:()=>n,g:()=>u,iL:()=>c,tS:()=>s,uh:()=>i,wk:()=>o});const n="NRBA",i="SESSION",o=144e5,a=18e5,s={STARTED:"session-started",PAUSE:"session-pause",RESET:"session-reset",RESUME:"session-resume",UPDATE:"session-update"},c={SAME_TAB:"same-tab",CROSS_TAB:"cross-tab"},u={OFF:0,FULL:1,ERROR:2}},1863:(e,t,r)=>{"use strict";function n(){return Math.floor(performance.now())}r.d(t,{t:()=>n})},7485:(e,t,r)=>{"use strict";r.d(t,{D:()=>i});var n=r(6154);function i(e){if(0===(e||"").indexOf("data:"))return{protocol:"data"};try{const t=new URL(e,location.href),r={port:t.port,hostname:t.hostname,pathname:t.pathname,search:t.search,protocol:t.protocol.slice(0,t.protocol.indexOf(":")),sameOrigin:t.protocol===n.gm?.location?.protocol&&t.host===n.gm?.location?.host};return r.port&&""!==r.port||("http:"===t.protocol&&(r.port="80"),"https:"===t.protocol&&(r.port="443")),r.pathname&&""!==r.pathname?r.pathname.startsWith("/")||(r.pathname="/".concat(r.pathname)):r.pathname="/",r}catch(e){return{}}}},944:(e,t,r)=>{"use strict";function n(e,t){"function"==typeof console.debug&&console.debug("New Relic Warning: https://github.com/newrelic/newrelic-browser-agent/blob/main/docs/warning-codes.md#".concat(e),t)}r.d(t,{R:()=>n})},5284:(e,t,r)=>{"use strict";r.d(t,{t:()=>c,B:()=>s});var n=r(7836),i=r(6154);const o="newrelic";const a=new Set,s={};function c(e,t){const r=n.ee.get(t);s[t]??={},e&&"object"==typeof e&&(a.has(t)||(r.emit("rumresp",[e]),s[t]=e,a.add(t),function(e={}){try{i.gm.dispatchEvent(new CustomEvent(o,{detail:e}))}catch(e){}}({loaded:!0})))}},8990:(e,t,r)=>{"use strict";r.d(t,{I:()=>i});var n=Object.prototype.hasOwnProperty;function i(e,t,r){if(n.call(e,t))return e[t];var i=r();if(Object.defineProperty&&Object.keys)try{return Object.defineProperty(e,t,{value:i,writable:!0,enumerable:!1}),i}catch(e){}return e[t]=i,i}},6389:(e,t,r)=>{"use strict";function n(e,t=500,r={}){const n=r?.leading||!1;let i;return(...r)=>{n&&void 0===i&&(e.apply(this,r),i=setTimeout((()=>{i=clearTimeout(i)}),t)),n||(clearTimeout(i),i=setTimeout((()=>{e.apply(this,r)}),t))}}function i(e){let t=!1;return(...r)=>{t||(t=!0,e.apply(this,r))}}r.d(t,{J:()=>i,s:()=>n})},3304:(e,t,r)=>{"use strict";r.d(t,{A:()=>o});var n=r(7836);const i=()=>{const e=new WeakSet;return(t,r)=>{if("object"==typeof r&&null!==r){if(e.has(r))return;e.add(r)}return r}};function o(e){try{return JSON.stringify(e,i())??""}catch(e){try{n.ee.emit("internal-error",[e])}catch(e){}return""}}},5289:(e,t,r)=>{"use strict";r.d(t,{GG:()=>o,sB:()=>a});var n=r(3878);function i(){return"undefined"==typeof document||"complete"===document.readyState}function o(e,t){if(i())return e();(0,n.sp)("load",e,t)}function a(e){if(i())return e();(0,n.DD)("DOMContentLoaded",e)}},384:(e,t,r)=>{"use strict";r.d(t,{NT:()=>o,US:()=>d,Zm:()=>a,bQ:()=>c,dV:()=>s,nY:()=>u,pV:()=>l});var n=r(6154),i=r(1863);const o={beacon:"bam.nr-data.net",errorBeacon:"bam.nr-data.net"};function a(){return n.gm.NREUM||(n.gm.NREUM={}),void 0===n.gm.newrelic&&(n.gm.newrelic=n.gm.NREUM),n.gm.NREUM}function s(){let e=a();return e.o||(e.o={ST:n.gm.setTimeout,SI:n.gm.setImmediate,CT:n.gm.clearTimeout,XHR:n.gm.XMLHttpRequest,REQ:n.gm.Request,EV:n.gm.Event,PR:n.gm.Promise,MO:n.gm.MutationObserver,FETCH:n.gm.fetch,WS:n.gm.WebSocket}),e}function c(e,t){let r=a();r.initializedAgents??={},t.initializedAt={ms:(0,i.t)(),date:new Date},r.initializedAgents[e]=t}function u(e){let t=a();return t.initializedAgents?.[e]}function d(e,t){a()[e]=t}function l(){return function(){let e=a();const t=e.info||{};e.info={beacon:o.beacon,errorBeacon:o.errorBeacon,...t}}(),function(){let e=a();const t=e.init||{};e.init={...t}}(),s(),function(){let e=a();const t=e.loader_config||{};e.loader_config={...t}}(),a()}},2843:(e,t,r)=>{"use strict";r.d(t,{u:()=>i});var n=r(3878);function i(e,t=!1,r,i){(0,n.DD)("visibilitychange",(function(){if(t)return void("hidden"===document.visibilityState&&e());e(document.visibilityState)}),r,i)}},8139:(e,t,r)=>{"use strict";r.d(t,{u:()=>f});var n=r(7836),i=r(3434),o=r(8990),a=r(6154);const s={},c=a.gm.XMLHttpRequest,u="addEventListener",d="removeEventListener",l="nr@wrapped:".concat(n.P);function f(e){var t=function(e){return(e||n.ee).get("events")}(e);if(s[t.debugId]++)return t;s[t.debugId]=1;var r=(0,i.YM)(t,!0);function f(e){r.inPlace(e,[u,d],"-",p)}function p(e,t){return e[1]}return"getPrototypeOf"in Object&&(a.RI&&h(document,f),c&&h(c.prototype,f),h(a.gm,f)),t.on(u+"-start",(function(e,t){var n=e[1];if(null!==n&&("function"==typeof n||"object"==typeof n)){var i=(0,o.I)(n,l,(function(){var e={object:function(){if("function"!=typeof n.handleEvent)return;return n.handleEvent.apply(n,arguments)},function:n}[typeof n];return e?r(e,"fn-",null,e.name||"anonymous"):n}));this.wrapped=e[1]=i}})),t.on(d+"-start",(function(e){e[1]=this.wrapped||e[1]})),t}function h(e,t,...r){let n=e;for(;"object"==typeof n&&!Object.prototype.hasOwnProperty.call(n,u);)n=Object.getPrototypeOf(n);n&&t(n,...r)}},3434:(e,t,r)=>{"use strict";r.d(t,{Jt:()=>o,YM:()=>c});var n=r(7836),i=r(5607);const o="nr@original:".concat(i.W);var a=Object.prototype.hasOwnProperty,s=!1;function c(e,t){return e||(e=n.ee),r.inPlace=function(e,t,n,i,o){n||(n="");const a="-"===n.charAt(0);for(let s=0;s<t.length;s++){const c=t[s],u=e[c];d(u)||(e[c]=r(u,a?c+n:n,i,c,o))}},r.flag=o,r;function r(t,r,n,s,c){return d(t)?t:(r||(r=""),nrWrapper[o]=t,function(e,t,r){if(Object.defineProperty&&Object.keys)try{return Object.keys(e).forEach((function(r){Object.defineProperty(t,r,{get:function(){return e[r]},set:function(t){return e[r]=t,t}})})),t}catch(e){u([e],r)}for(var n in e)a.call(e,n)&&(t[n]=e[n])}(t,nrWrapper,e),nrWrapper);function nrWrapper(){var o,a,d,l;try{a=this,o=[...arguments],d="function"==typeof n?n(o,a):n||{}}catch(t){u([t,"",[o,a,s],d],e)}i(r+"start",[o,a,s],d,c);try{return l=t.apply(a,o)}catch(e){throw i(r+"err",[o,a,e],d,c),e}finally{i(r+"end",[o,a,l],d,c)}}}function i(r,n,i,o){if(!s||t){var a=s;s=!0;try{e.emit(r,n,i,t,o)}catch(t){u([t,r,n,i],e)}s=a}}}function u(e,t){t||(t=n.ee);try{t.emit("internal-error",e)}catch(e){}}function d(e){return!(e&&"function"==typeof e&&e.apply&&!e[o])}},9300:(e,t,r)=>{"use strict";r.d(t,{T:()=>n});const n=r(860).K7.ajax},3333:(e,t,r)=>{"use strict";r.d(t,{$v:()=>u,TZ:()=>n,Zp:()=>i,kd:()=>c,mq:()=>s,nf:()=>a,qN:()=>o});const n=r(860).K7.genericEvents,i=["auxclick","click","copy","keydown","paste","scrollend"],o=["focus","blur"],a=4,s=1e3,c=["PageAction","UserAction","BrowserPerformance"],u={MARKS:"experimental.marks",MEASURES:"experimental.measures",RESOURCES:"experimental.resources"}},6774:(e,t,r)=>{"use strict";r.d(t,{T:()=>n});const n=r(860).K7.jserrors},993:(e,t,r)=>{"use strict";r.d(t,{ET:()=>o,TZ:()=>a,p_:()=>i});var n=r(860);const i={ERROR:"ERROR",WARN:"WARN",INFO:"INFO",DEBUG:"DEBUG",TRACE:"TRACE"},o="log",a=n.K7.logging},3785:(e,t,r)=>{"use strict";r.d(t,{R:()=>c,b:()=>u});var n=r(9908),i=r(1863),o=r(860),a=r(3969),s=r(993);function c(e,t,r={},c=s.p_.INFO){(0,n.p)(a.xV,["API/logging/".concat(c.toLowerCase(),"/called")],void 0,o.K7.metrics,e),(0,n.p)(s.ET,[(0,i.t)(),t,r,c],void 0,o.K7.logging,e)}function u(e){return"string"==typeof e&&Object.values(s.p_).some((t=>t===e.toUpperCase().trim()))}},3969:(e,t,r)=>{"use strict";r.d(t,{TZ:()=>n,XG:()=>s,rs:()=>i,xV:()=>a,z_:()=>o});const n=r(860).K7.metrics,i="sm",o="cm",a="storeSupportabilityMetrics",s="storeEventMetrics"},6630:(e,t,r)=>{"use strict";r.d(t,{T:()=>n});const n=r(860).K7.pageViewEvent},782:(e,t,r)=>{"use strict";r.d(t,{T:()=>n});const n=r(860).K7.pageViewTiming},6344:(e,t,r)=>{"use strict";r.d(t,{BB:()=>d,G4:()=>o,Qb:()=>l,TZ:()=>i,Ug:()=>a,_s:()=>s,bc:()=>u,yP:()=>c});var n=r(2614);const i=r(860).K7.sessionReplay,o={RECORD:"recordReplay",PAUSE:"pauseReplay",REPLAY_RUNNING:"replayRunning",ERROR_DURING_REPLAY:"errorDuringReplay"},a=.12,s={DomContentLoaded:0,Load:1,FullSnapshot:2,IncrementalSnapshot:3,Meta:4,Custom:5},c={[n.g.ERROR]:15e3,[n.g.FULL]:3e5,[n.g.OFF]:0},u={RESET:{message:"Session was reset",sm:"Reset"},IMPORT:{message:"Recorder failed to import",sm:"Import"},TOO_MANY:{message:"429: Too Many Requests",sm:"Too-Many"},TOO_BIG:{message:"Payload was too large",sm:"Too-Big"},CROSS_TAB:{message:"Session Entity was set to OFF on another tab",sm:"Cross-Tab"},ENTITLEMENTS:{message:"Session Replay is not allowed and will not be started",sm:"Entitlement"}},d=5e3,l={API:"api"}},5270:(e,t,r)=>{"use strict";r.d(t,{Aw:()=>c,CT:()=>u,SR:()=>s});var n=r(384),i=r(9417),o=r(7767),a=r(6154);function s(e){return!!(0,n.dV)().o.MO&&(0,o.V)(e)&&!0===(0,i.gD)(e,"session_trace.enabled")}function c(e){return!0===(0,i.gD)(e,"session_replay.preload")&&s(e)}function u(e,t){const r=t.correctAbsoluteTimestamp(e);return{originalTimestamp:e,correctedTimestamp:r,timestampDiff:e-r,originTime:a.WN,correctedOriginTime:t.correctedOriginTime,originTimeDiff:Math.floor(a.WN-t.correctedOriginTime)}}},3738:(e,t,r)=>{"use strict";r.d(t,{He:()=>i,Kp:()=>s,Lc:()=>u,Rz:()=>d,TZ:()=>n,bD:()=>o,d3:()=>a,jx:()=>l,uP:()=>c});const n=r(860).K7.sessionTrace,i="bstResource",o="resource",a="-start",s="-end",c="fn"+a,u="fn"+s,d="pushState",l=1e3},3962:(e,t,r)=>{"use strict";r.d(t,{AM:()=>o,O2:()=>c,Qu:()=>u,TZ:()=>s,ih:()=>d,pP:()=>a,tC:()=>i});var n=r(860);const i=["click","keydown","submit","popstate"],o="api",a="initialPageLoad",s=n.K7.softNav,c={INITIAL_PAGE_LOAD:"",ROUTE_CHANGE:1,UNSPECIFIED:2},u={INTERACTION:1,AJAX:2,CUSTOM_END:3,CUSTOM_TRACER:4},d={IP:"in progress",FIN:"finished",CAN:"cancelled"}},7378:(e,t,r)=>{"use strict";r.d(t,{$p:()=>x,BR:()=>b,Kp:()=>R,L3:()=>y,Lc:()=>c,NC:()=>o,SG:()=>d,TZ:()=>i,U6:()=>p,UT:()=>m,d3:()=>w,dT:()=>f,e5:()=>T,gx:()=>v,l9:()=>l,oW:()=>h,op:()=>g,rw:()=>u,tH:()=>A,uP:()=>s,wW:()=>E,xq:()=>a});var n=r(384);const i=r(860).K7.spa,o=["click","submit","keypress","keydown","keyup","change"],a=999,s="fn-start",c="fn-end",u="cb-start",d="api-ixn-",l="remaining",f="interaction",h="spaNode",p="jsonpNode",g="fetch-start",m="fetch-done",v="fetch-body-",b="jsonp-end",y=(0,n.dV)().o.ST,w="-start",R="-end",x="-body",E="cb"+R,T="jsTime",A="fetch"},4234:(e,t,r)=>{"use strict";r.d(t,{W:()=>o});var n=r(7836),i=r(1687);class o{constructor(e,t){this.agentIdentifier=e,this.ee=n.ee.get(e),this.featureName=t,this.blocked=!1}deregisterDrain(){(0,i.x3)(this.agentIdentifier,this.featureName)}}},7767:(e,t,r)=>{"use strict";r.d(t,{V:()=>o});var n=r(9417),i=r(6154);const o=e=>i.RI&&!0===(0,n.gD)(e,"privacy.cookies_enabled")},425:(e,t,r)=>{"use strict";r.d(t,{j:()=>j});var n=r(860),i=r(2555),o=r(3371),a=r(9908),s=r(7836),c=r(1687),u=r(5289),d=r(6154),l=r(944),f=r(3969),h=r(384),p=r(6344);const g=["setErrorHandler","finished","addToTrace","addRelease","recordCustomEvent","addPageAction","setCurrentRouteName","setPageViewName","setCustomAttribute","interaction","noticeError","setUserId","setApplicationVersion","start",p.G4.RECORD,p.G4.PAUSE,"log","wrapLogger"],m=["setErrorHandler","finished","addToTrace","addRelease"];var v=r(1863),b=r(2614),y=r(993),w=r(3785),R=r(2646),x=r(3434);const E=new Map;function T(e,t,r,n){if("object"!=typeof t||!t||"string"!=typeof r||!r||"function"!=typeof t[r])return(0,l.R)(29);const i=function(e){return(e||s.ee).get("logger")}(e),o=(0,x.YM)(i),a=new R.y(s.P);a.level=n.level,a.customAttributes=n.customAttributes;const c=t[r]?.[x.Jt]||t[r];return E.set(c,a),o.inPlace(t,[r],"wrap-logger-",(()=>E.get(c))),i}function A(){const e=(0,h.pV)();g.forEach((t=>{e[t]=(...r)=>function(t,...r){let n=[];return Object.values(e.initializedAgents).forEach((e=>{e&&e.api?e.exposed&&e.api[t]&&n.push(e.api[t](...r)):(0,l.R)(38,t)})),n.length>1?n:n[0]}(t,...r)}))}const S={};var N=r(9417),_=r(5603),O=r(5284);const I=e=>{const t=e.startsWith("http");e+="/",r.p=t?e:"https://"+e};let P=!1;function j(e,t={},g,R){let{init:x,info:E,loader_config:j,runtime:C={},exposed:k=!0}=t;C.loaderType=g;const L=(0,h.pV)();E||(x=L.init,E=L.info,j=L.loader_config),(0,N.xN)(e.agentIdentifier,x||{}),(0,_.a)(e.agentIdentifier,j||{}),E.jsAttributes??={},d.bv&&(E.jsAttributes.isWorker=!0),(0,i.x1)(e.agentIdentifier,E);const H=(0,N.D0)(e.agentIdentifier),M=[E.beacon,E.errorBeacon];P||(H.proxy.assets&&(I(H.proxy.assets),M.push(H.proxy.assets)),H.proxy.beacon&&M.push(H.proxy.beacon),A(),(0,h.US)("activatedFeatures",O.B),e.runSoftNavOverSpa&&=!0===H.soft_navigations.enabled&&H.feature_flags.includes("soft_nav")),C.denyList=[...H.ajax.deny_list||[],...H.ajax.block_internal?M:[]],C.ptid=e.agentIdentifier,(0,o.V)(e.agentIdentifier,C),e.ee=s.ee.get(e.agentIdentifier),void 0===e.api&&(e.api=function(e,t,h=!1){t||(0,c.Ak)(e,"api");const g={};var R=s.ee.get(e),x=R.get("tracer");S[e]=b.g.OFF,R.on(p.G4.REPLAY_RUNNING,(t=>{S[e]=t}));var E="api-",A=E+"ixn-";function N(t,r,n,o){const a=(0,i.Vp)(e);return null===r?delete a.jsAttributes[t]:(0,i.x1)(e,{...a,jsAttributes:{...a.jsAttributes,[t]:r}}),I(E,n,!0,o||null===r?"session":void 0)(t,r)}function _(){}g.log=function(e,{customAttributes:t={},level:r=y.p_.INFO}={}){(0,a.p)(f.xV,["API/log/called"],void 0,n.K7.metrics,R),(0,w.R)(R,e,t,r)},g.wrapLogger=(e,t,{customAttributes:r={},level:i=y.p_.INFO}={})=>{(0,a.p)(f.xV,["API/wrapLogger/called"],void 0,n.K7.metrics,R),T(R,e,t,{customAttributes:r,level:i})},m.forEach((e=>{g[e]=I(E,e,!0,"api")})),g.addPageAction=I(E,"addPageAction",!0,n.K7.genericEvents),g.recordCustomEvent=I(E,"recordCustomEvent",!0,n.K7.genericEvents),g.setPageViewName=function(t,r){if("string"==typeof t)return"/"!==t.charAt(0)&&(t="/"+t),(0,o.f)(e).customTransaction=(r||"http://custom.transaction")+t,I(E,"setPageViewName",!0)()},g.setCustomAttribute=function(e,t,r=!1){if("string"==typeof e){if(["string","number","boolean"].includes(typeof t)||null===t)return N(e,t,"setCustomAttribute",r);(0,l.R)(40,typeof t)}else(0,l.R)(39,typeof e)},g.setUserId=function(e){if("string"==typeof e||null===e)return N("enduser.id",e,"setUserId",!0);(0,l.R)(41,typeof e)},g.setApplicationVersion=function(e){if("string"==typeof e||null===e)return N("application.version",e,"setApplicationVersion",!1);(0,l.R)(42,typeof e)},g.start=()=>{try{(0,a.p)(f.xV,["API/start/called"],void 0,n.K7.metrics,R),R.emit("manual-start-all")}catch(e){(0,l.R)(23,e)}},g[p.G4.RECORD]=function(){(0,a.p)(f.xV,["API/recordReplay/called"],void 0,n.K7.metrics,R),(0,a.p)(p.G4.RECORD,[],void 0,n.K7.sessionReplay,R)},g[p.G4.PAUSE]=function(){(0,a.p)(f.xV,["API/pauseReplay/called"],void 0,n.K7.metrics,R),(0,a.p)(p.G4.PAUSE,[],void 0,n.K7.sessionReplay,R)},g.interaction=function(e){return(new _).get("object"==typeof e?e:{})};const O=_.prototype={createTracer:function(e,t){var r={},i=this,o="function"==typeof t;return(0,a.p)(f.xV,["API/createTracer/called"],void 0,n.K7.metrics,R),h||(0,a.p)(A+"tracer",[(0,v.t)(),e,r],i,n.K7.spa,R),function(){if(x.emit((o?"":"no-")+"fn-start",[(0,v.t)(),i,o],r),o)try{return t.apply(this,arguments)}catch(e){const t="string"==typeof e?new Error(e):e;throw x.emit("fn-err",[arguments,this,t],r),t}finally{x.emit("fn-end",[(0,v.t)()],r)}}}};function I(e,t,r,i){return function(){return(0,a.p)(f.xV,["API/"+t+"/called"],void 0,n.K7.metrics,R),i&&(0,a.p)(e+t,[r?(0,v.t)():performance.now(),...arguments],r?null:this,i,R),r?void 0:this}}function P(){r.e(478).then(r.bind(r,8778)).then((({setAPI:t})=>{t(e),(0,c.Ze)(e,"api")})).catch((e=>{(0,l.R)(27,e),R.abort()}))}return["actionText","setName","setAttribute","save","ignore","onEnd","getContext","end","get"].forEach((e=>{O[e]=I(A,e,void 0,h?n.K7.softNav:n.K7.spa)})),g.setCurrentRouteName=h?I(A,"routeName",void 0,n.K7.softNav):I(E,"routeName",!0,n.K7.spa),g.noticeError=function(t,r){"string"==typeof t&&(t=new Error(t)),(0,a.p)(f.xV,["API/noticeError/called"],void 0,n.K7.metrics,R),(0,a.p)("err",[t,(0,v.t)(),!1,r,!!S[e]],void 0,n.K7.jserrors,R)},d.RI?(0,u.GG)((()=>P()),!0):P(),g}(e.agentIdentifier,R,e.runSoftNavOverSpa)),void 0===e.exposed&&(e.exposed=k),P=!0}},8374:(e,t,r)=>{r.nc=(()=>{try{return document?.currentScript?.nonce}catch(e){}return""})()},860:(e,t,r)=>{"use strict";r.d(t,{$J:()=>u,K7:()=>s,P3:()=>c,XX:()=>i,qY:()=>n,v4:()=>a});const n="events",i="jserrors",o="browser/blobs",a="rum",s={ajax:"ajax",genericEvents:"generic_events",jserrors:i,logging:"logging",metrics:"metrics",pageAction:"page_action",pageViewEvent:"page_view_event",pageViewTiming:"page_view_timing",sessionReplay:"session_replay",sessionTrace:"session_trace",softNav:"soft_navigations",spa:"spa"},c={[s.pageViewEvent]:1,[s.pageViewTiming]:2,[s.metrics]:3,[s.jserrors]:4,[s.spa]:5,[s.ajax]:6,[s.sessionTrace]:7,[s.softNav]:8,[s.sessionReplay]:9,[s.logging]:10,[s.genericEvents]:11},u={[s.pageViewEvent]:a,[s.pageViewTiming]:n,[s.ajax]:n,[s.spa]:n,[s.softNav]:n,[s.metrics]:i,[s.jserrors]:i,[s.sessionTrace]:o,[s.sessionReplay]:o,[s.logging]:"browser/logs",[s.genericEvents]:"ins"}}},n={};function i(e){var t=n[e];if(void 0!==t)return t.exports;var o=n[e]={exports:{}};return r[e](o,o.exports,i),o.exports}i.m=r,i.d=(e,t)=>{for(var r in t)i.o(t,r)&&!i.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},i.f={},i.e=e=>Promise.all(Object.keys(i.f).reduce(((t,r)=>(i.f[r](e,t),t)),[])),i.u=e=>({212:"nr-spa-compressor",249:"nr-spa-recorder",478:"nr-spa"}[e]+"-1.278.2.min.js"),i.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),e={},t="NRBA-1.278.2.PROD:",i.l=(r,n,o,a)=>{if(e[r])e[r].push(n);else{var s,c;if(void 0!==o)for(var u=document.getElementsByTagName("script"),d=0;d<u.length;d++){var l=u[d];if(l.getAttribute("src")==r||l.getAttribute("data-webpack")==t+o){s=l;break}}if(!s){c=!0;var f={478:"sha512-LyJuO9l6nGvSxIdDAH5w4L3R+Bn4r+UYrcpedtLnIcpXcZMvJE7ScYU9RkzfA+JLy9Hss3YbNdKuNso4YODcFQ==",249:"sha512-4zCEYvMPXYo8xYjDUNIIh2KbeG7ninqVP4gidiTCMvoQbdAy7f/Y4cnOvtEwS3i6p4599og04o4k4cRo0fisQg==",212:"sha512-aM9tSk7rER3AgTnylnbJ1mVxXKff/CrV8GZ+9nUtCGXY44LPaGRGNT+iWsobM3u/ji3rv4es5Mlh/8W7ssabKA=="};(s=document.createElement("script")).charset="utf-8",s.timeout=120,i.nc&&s.setAttribute("nonce",i.nc),s.setAttribute("data-webpack",t+o),s.src=r,0!==s.src.indexOf(window.location.origin+"/")&&(s.crossOrigin="anonymous"),f[a]&&(s.integrity=f[a])}e[r]=[n];var h=(t,n)=>{s.onerror=s.onload=null,clearTimeout(p);var i=e[r];if(delete e[r],s.parentNode&&s.parentNode.removeChild(s),i&&i.forEach((e=>e(n))),t)return t(n)},p=setTimeout(h.bind(null,void 0,{type:"timeout",target:s}),12e4);s.onerror=h.bind(null,s.onerror),s.onload=h.bind(null,s.onload),c&&document.head.appendChild(s)}},i.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},i.p="https://js-agent.newrelic.com/",(()=>{var e={38:0,788:0};i.f.j=(t,r)=>{var n=i.o(e,t)?e[t]:void 0;if(0!==n)if(n)r.push(n[2]);else{var o=new Promise(((r,i)=>n=e[t]=[r,i]));r.push(n[2]=o);var a=i.p+i.u(t),s=new Error;i.l(a,(r=>{if(i.o(e,t)&&(0!==(n=e[t])&&(e[t]=void 0),n)){var o=r&&("load"===r.type?"missing":r.type),a=r&&r.target&&r.target.src;s.message="Loading chunk "+t+" failed.\n("+o+": "+a+")",s.name="ChunkLoadError",s.type=o,s.request=a,n[1](s)}}),"chunk-"+t,t)}};var t=(t,r)=>{var n,o,[a,s,c]=r,u=0;if(a.some((t=>0!==e[t]))){for(n in s)i.o(s,n)&&(i.m[n]=s[n]);if(c)c(i)}for(t&&t(r);u<a.length;u++)o=a[u],i.o(e,o)&&e[o]&&e[o][0](),e[o]=0},r=self["webpackChunk:NRBA-1.278.2.PROD"]=self["webpackChunk:NRBA-1.278.2.PROD"]||[];r.forEach(t.bind(null,0)),r.push=t.bind(null,r.push.bind(r))})(),(()=>{"use strict";i(8374);var e=i(944),t=i(6344),r=i(9566);class n{agentIdentifier;constructor(e=(0,r.LA)(16)){this.agentIdentifier=e}#e(t,...r){if("function"==typeof this.api?.[t])return this.api[t](...r);(0,e.R)(35,t)}addPageAction(e,t){return this.#e("addPageAction",e,t)}recordCustomEvent(e,t){return this.#e("recordCustomEvent",e,t)}setPageViewName(e,t){return this.#e("setPageViewName",e,t)}setCustomAttribute(e,t,r){return this.#e("setCustomAttribute",e,t,r)}noticeError(e,t){return this.#e("noticeError",e,t)}setUserId(e){return this.#e("setUserId",e)}setApplicationVersion(e){return this.#e("setApplicationVersion",e)}setErrorHandler(e){return this.#e("setErrorHandler",e)}addRelease(e,t){return this.#e("addRelease",e,t)}log(e,t){return this.#e("log",e,t)}}class o extends n{#e(t,...r){if("function"==typeof this.api?.[t])return this.api[t](...r);(0,e.R)(35,t)}start(){return this.#e("start")}finished(e){return this.#e("finished",e)}recordReplay(){return this.#e(t.G4.RECORD)}pauseReplay(){return this.#e(t.G4.PAUSE)}addToTrace(e){return this.#e("addToTrace",e)}setCurrentRouteName(e){return this.#e("setCurrentRouteName",e)}interaction(){return this.#e("interaction")}wrapLogger(e,t,r){return this.#e("wrapLogger",e,t,r)}}var a=i(860),s=i(9417);const c=Object.values(a.K7);function u(e){const t={};return c.forEach((r=>{t[r]=function(e,t){return!0===(0,s.gD)(t,"".concat(e,".enabled"))}(r,e)})),t}var d=i(425);var l=i(1687),f=i(4234),h=i(5289),p=i(6154),g=i(5270),m=i(7767),v=i(6389);class b extends f.W{constructor(e,t,r=!0){super(e.agentIdentifier,t),this.auto=r,this.abortHandler=void 0,this.featAggregate=void 0,this.onAggregateImported=void 0,!1===e.init[this.featureName].autoStart&&(this.auto=!1),this.auto?(0,l.Ak)(e.agentIdentifier,t):this.ee.on("manual-start-all",(0,v.J)((()=>{(0,l.Ak)(e.agentIdentifier,this.featureName),this.auto=!0,this.importAggregator(e)})))}importAggregator(t,r={}){if(this.featAggregate||!this.auto)return;let n;this.onAggregateImported=new Promise((e=>{n=e}));const o=async()=>{let o;try{if((0,m.V)(this.agentIdentifier)){const{setupAgentSession:e}=await i.e(478).then(i.bind(i,6526));o=e(t)}}catch(t){(0,e.R)(20,t),this.ee.emit("internal-error",[t]),this.featureName===a.K7.sessionReplay&&this.abortHandler?.()}try{if(!this.#t(this.featureName,o))return(0,l.Ze)(this.agentIdentifier,this.featureName),void n(!1);const{lazyFeatureLoader:e}=await i.e(478).then(i.bind(i,6103)),{Aggregate:a}=await e(this.featureName,"aggregate");this.featAggregate=new a(t,r),t.runtime.harvester.initializedAggregates.push(this.featAggregate),n(!0)}catch(t){(0,e.R)(34,t),this.abortHandler?.(),(0,l.Ze)(this.agentIdentifier,this.featureName,!0),n(!1),this.ee&&this.ee.abort()}};p.RI?(0,h.GG)((()=>o()),!0):o()}#t(e,t){switch(e){case a.K7.sessionReplay:return(0,g.SR)(this.agentIdentifier)&&!!t;case a.K7.sessionTrace:return!!t;default:return!0}}}var y=i(6630);class w extends b{static featureName=y.T;constructor(e,t=!0){super(e,y.T,t),this.importAggregator(e)}}var R=i(384);var x=i(9908),E=i(2843),T=i(3878),A=i(782),S=i(1863);class N extends b{static featureName=A.T;constructor(e,t=!0){super(e,A.T,t),p.RI&&((0,E.u)((()=>(0,x.p)("docHidden",[(0,S.t)()],void 0,A.T,this.ee)),!0),(0,T.sp)("pagehide",(()=>(0,x.p)("winPagehide",[(0,S.t)()],void 0,A.T,this.ee))),this.importAggregator(e))}}var _=i(3969);class O extends b{static featureName=_.TZ;constructor(e,t=!0){super(e,_.TZ,t),this.importAggregator(e)}}var I=i(6774),P=i(3304);class j{constructor(e,t,r,n,i){this.name="UncaughtError",this.message="string"==typeof e?e:(0,P.A)(e),this.sourceURL=t,this.line=r,this.column=n,this.__newrelic=i}}function C(e){return H(e)?e:new j(void 0!==e?.message?e.message:e,e?.filename||e?.sourceURL,e?.lineno||e?.line,e?.colno||e?.col,e?.__newrelic)}function k(e){const t="Unhandled Promise Rejection";if(!e?.reason)return;if(H(e.reason))try{return e.reason.message=t+": "+e.reason.message,C(e.reason)}catch(t){return C(e.reason)}const r=C(e.reason);return r.message=t+": "+r?.message,r}function L(e){if(e.error instanceof SyntaxError&&!/:\d+$/.test(e.error.stack?.trim())){const t=new j(e.message,e.filename,e.lineno,e.colno,e.error.__newrelic);return t.name=SyntaxError.name,t}return H(e.error)?e.error:C(e)}function H(e){return e instanceof Error&&!!e.stack}class M extends b{static featureName=I.T;#r=!1;constructor(e,r=!0){super(e,I.T,r);try{this.removeOnAbort=new AbortController}catch(e){}this.ee.on("internal-error",((e,t)=>{this.abortHandler&&(0,x.p)("ierr",[C(e),(0,S.t)(),!0,{},this.#r,t],void 0,this.featureName,this.ee)})),this.ee.on(t.G4.REPLAY_RUNNING,(e=>{this.#r=e})),p.gm.addEventListener("unhandledrejection",(e=>{this.abortHandler&&(0,x.p)("err",[k(e),(0,S.t)(),!1,{unhandledPromiseRejection:1},this.#r],void 0,this.featureName,this.ee)}),(0,T.jT)(!1,this.removeOnAbort?.signal)),p.gm.addEventListener("error",(e=>{this.abortHandler&&(0,x.p)("err",[L(e),(0,S.t)(),!1,{},this.#r],void 0,this.featureName,this.ee)}),(0,T.jT)(!1,this.removeOnAbort?.signal)),this.abortHandler=this.#n,this.importAggregator(e)}#n(){this.removeOnAbort?.abort(),this.abortHandler=void 0}}var D=i(8990);let K=1;const U="nr@id";function V(e){const t=typeof e;return!e||"object"!==t&&"function"!==t?-1:e===p.gm?0:(0,D.I)(e,U,(function(){return K++}))}function G(e){if("string"==typeof e&&e.length)return e.length;if("object"==typeof e){if("undefined"!=typeof ArrayBuffer&&e instanceof ArrayBuffer&&e.byteLength)return e.byteLength;if("undefined"!=typeof Blob&&e instanceof Blob&&e.size)return e.size;if(!("undefined"!=typeof FormData&&e instanceof FormData))try{return(0,P.A)(e).length}catch(e){return}}}var F=i(8139),B=i(7836),W=i(3434);const z={},q=["open","send"];function Z(t){var r=t||B.ee;const n=function(e){return(e||B.ee).get("xhr")}(r);if(void 0===p.gm.XMLHttpRequest)return n;if(z[n.debugId]++)return n;z[n.debugId]=1,(0,F.u)(r);var i=(0,W.YM)(n),o=p.gm.XMLHttpRequest,a=p.gm.MutationObserver,s=p.gm.Promise,c=p.gm.setInterval,u="readystatechange",d=["onload","onerror","onabort","onloadstart","onloadend","onprogress","ontimeout"],l=[],f=p.gm.XMLHttpRequest=function(t){const r=new o(t),a=n.context(r);try{n.emit("new-xhr",[r],a),r.addEventListener(u,(s=a,function(){var e=this;e.readyState>3&&!s.resolved&&(s.resolved=!0,n.emit("xhr-resolved",[],e)),i.inPlace(e,d,"fn-",y)}),(0,T.jT)(!1))}catch(t){(0,e.R)(15,t);try{n.emit("internal-error",[t])}catch(e){}}var s;return r};function h(e,t){i.inPlace(t,["onreadystatechange"],"fn-",y)}if(function(e,t){for(var r in e)t[r]=e[r]}(o,f),f.prototype=o.prototype,i.inPlace(f.prototype,q,"-xhr-",y),n.on("send-xhr-start",(function(e,t){h(e,t),function(e){l.push(e),a&&(g?g.then(b):c?c(b):(m=-m,v.data=m))}(t)})),n.on("open-xhr-start",h),a){var g=s&&s.resolve();if(!c&&!s){var m=1,v=document.createTextNode(m);new a(b).observe(v,{characterData:!0})}}else r.on("fn-end",(function(e){e[0]&&e[0].type===u||b()}));function b(){for(var e=0;e<l.length;e++)h(0,l[e]);l.length&&(l=[])}function y(e,t){return t}return n}var Y="fetch-",X=Y+"body-",J=["arrayBuffer","blob","json","text","formData"],Q=p.gm.Request,ee=p.gm.Response,te="prototype";const re={};function ne(e){const t=function(e){return(e||B.ee).get("fetch")}(e);if(!(Q&&ee&&p.gm.fetch))return t;if(re[t.debugId]++)return t;function r(e,r,n){var i=e[r];"function"==typeof i&&(e[r]=function(){var e,r=[...arguments],o={};t.emit(n+"before-start",[r],o),o[B.P]&&o[B.P].dt&&(e=o[B.P].dt);var a=i.apply(this,r);return t.emit(n+"start",[r,e],a),a.then((function(e){return t.emit(n+"end",[null,e],a),e}),(function(e){throw t.emit(n+"end",[e],a),e}))})}return re[t.debugId]=1,J.forEach((e=>{r(Q[te],e,X),r(ee[te],e,X)})),r(p.gm,"fetch",Y),t.on(Y+"end",(function(e,r){var n=this;if(r){var i=r.headers.get("content-length");null!==i&&(n.rxSize=i),t.emit(Y+"done",[null,r],n)}else t.emit(Y+"done",[e],n)})),t}var ie=i(7485),oe=i(5603);class ae{constructor(e){this.agentIdentifier=e}generateTracePayload(e){if(!this.shouldGenerateTrace(e))return null;var t=(0,oe.o)(this.agentIdentifier);if(!t)return null;var n=(t.accountID||"").toString()||null,i=(t.agentID||"").toString()||null,o=(t.trustKey||"").toString()||null;if(!n||!i)return null;var a=(0,r.ZF)(),s=(0,r.el)(),c=Date.now(),u={spanId:a,traceId:s,timestamp:c};return(e.sameOrigin||this.isAllowedOrigin(e)&&this.useTraceContextHeadersForCors())&&(u.traceContextParentHeader=this.generateTraceContextParentHeader(a,s),u.traceContextStateHeader=this.generateTraceContextStateHeader(a,c,n,i,o)),(e.sameOrigin&&!this.excludeNewrelicHeader()||!e.sameOrigin&&this.isAllowedOrigin(e)&&this.useNewrelicHeaderForCors())&&(u.newrelicHeader=this.generateTraceHeader(a,s,c,n,i,o)),u}generateTraceContextParentHeader(e,t){return"00-"+t+"-"+e+"-01"}generateTraceContextStateHeader(e,t,r,n,i){return i+"@nr=0-1-"+r+"-"+n+"-"+e+"----"+t}generateTraceHeader(e,t,r,n,i,o){if(!("function"==typeof p.gm?.btoa))return null;var a={v:[0,1],d:{ty:"Browser",ac:n,ap:i,id:e,tr:t,ti:r}};return o&&n!==o&&(a.d.tk=o),btoa((0,P.A)(a))}shouldGenerateTrace(e){return this.isDtEnabled()&&this.isAllowedOrigin(e)}isAllowedOrigin(e){var t=!1,r={};if((0,s.gD)(this.agentIdentifier,"distributed_tracing")&&(r=(0,s.D0)(this.agentIdentifier).distributed_tracing),e.sameOrigin)t=!0;else if(r.allowed_origins instanceof Array)for(var n=0;n<r.allowed_origins.length;n++){var i=(0,ie.D)(r.allowed_origins[n]);if(e.hostname===i.hostname&&e.protocol===i.protocol&&e.port===i.port){t=!0;break}}return t}isDtEnabled(){var e=(0,s.gD)(this.agentIdentifier,"distributed_tracing");return!!e&&!!e.enabled}excludeNewrelicHeader(){var e=(0,s.gD)(this.agentIdentifier,"distributed_tracing");return!!e&&!!e.exclude_newrelic_header}useNewrelicHeaderForCors(){var e=(0,s.gD)(this.agentIdentifier,"distributed_tracing");return!!e&&!1!==e.cors_use_newrelic_header}useTraceContextHeadersForCors(){var e=(0,s.gD)(this.agentIdentifier,"distributed_tracing");return!!e&&!!e.cors_use_tracecontext_headers}}var se=i(9300),ce=i(7295),ue=["load","error","abort","timeout"],de=ue.length,le=(0,R.dV)().o.REQ,fe=(0,R.dV)().o.XHR;class he extends b{static featureName=se.T;constructor(e,t=!0){super(e,se.T,t),this.dt=new ae(e.agentIdentifier),this.handler=(e,t,r,n)=>(0,x.p)(e,t,r,n,this.ee);try{const e={xmlhttprequest:"xhr",fetch:"fetch",beacon:"beacon"};p.gm?.performance?.getEntriesByType("resource").forEach((t=>{if(t.initiatorType in e&&0!==t.responseStatus){const r={status:t.responseStatus},n={rxSize:t.transferSize,duration:Math.floor(t.duration),cbTime:0};pe(r,t.name),this.handler("xhr",[r,n,t.startTime,t.responseEnd,e[t.initiatorType]],void 0,a.K7.ajax)}}))}catch(e){}ne(this.ee),Z(this.ee),function(e,t,r,n){function i(e){var t=this;t.totalCbs=0,t.called=0,t.cbTime=0,t.end=R,t.ended=!1,t.xhrGuids={},t.lastSize=null,t.loadCaptureCalled=!1,t.params=this.params||{},t.metrics=this.metrics||{},e.addEventListener("load",(function(r){E(t,e)}),(0,T.jT)(!1)),p.lR||e.addEventListener("progress",(function(e){t.lastSize=e.loaded}),(0,T.jT)(!1))}function o(e){this.params={method:e[0]},pe(this,e[1]),this.metrics={}}function s(t,r){e.loader_config.xpid&&this.sameOrigin&&r.setRequestHeader("X-NewRelic-ID",e.loader_config.xpid);var i=n.generateTracePayload(this.parsedOrigin);if(i){var o=!1;i.newrelicHeader&&(r.setRequestHeader("newrelic",i.newrelicHeader),o=!0),i.traceContextParentHeader&&(r.setRequestHeader("traceparent",i.traceContextParentHeader),i.traceContextStateHeader&&r.setRequestHeader("tracestate",i.traceContextStateHeader),o=!0),o&&(this.dt=i)}}function c(e,r){var n=this.metrics,i=e[0],o=this;if(n&&i){var a=G(i);a&&(n.txSize=a)}this.startTime=(0,S.t)(),this.body=i,this.listener=function(e){try{"abort"!==e.type||o.loadCaptureCalled||(o.params.aborted=!0),("load"!==e.type||o.called===o.totalCbs&&(o.onloadCalled||"function"!=typeof r.onload)&&"function"==typeof o.end)&&o.end(r)}catch(e){try{t.emit("internal-error",[e])}catch(e){}}};for(var s=0;s<de;s++)r.addEventListener(ue[s],this.listener,(0,T.jT)(!1))}function u(e,t,r){this.cbTime+=e,t?this.onloadCalled=!0:this.called+=1,this.called!==this.totalCbs||!this.onloadCalled&&"function"==typeof r.onload||"function"!=typeof this.end||this.end(r)}function d(e,t){var r=""+V(e)+!!t;this.xhrGuids&&!this.xhrGuids[r]&&(this.xhrGuids[r]=!0,this.totalCbs+=1)}function l(e,t){var r=""+V(e)+!!t;this.xhrGuids&&this.xhrGuids[r]&&(delete this.xhrGuids[r],this.totalCbs-=1)}function f(){this.endTime=(0,S.t)()}function h(e,r){r instanceof fe&&"load"===e[0]&&t.emit("xhr-load-added",[e[1],e[2]],r)}function g(e,r){r instanceof fe&&"load"===e[0]&&t.emit("xhr-load-removed",[e[1],e[2]],r)}function m(e,t,r){t instanceof fe&&("onload"===r&&(this.onload=!0),("load"===(e[0]&&e[0].type)||this.onload)&&(this.xhrCbStart=(0,S.t)()))}function v(e,r){this.xhrCbStart&&t.emit("xhr-cb-time",[(0,S.t)()-this.xhrCbStart,this.onload,r],r)}function b(e){var t,r=e[1]||{};if("string"==typeof e[0]?0===(t=e[0]).length&&p.RI&&(t=""+p.gm.location.href):e[0]&&e[0].url?t=e[0].url:p.gm?.URL&&e[0]&&e[0]instanceof URL?t=e[0].href:"function"==typeof e[0].toString&&(t=e[0].toString()),"string"==typeof t&&0!==t.length){t&&(this.parsedOrigin=(0,ie.D)(t),this.sameOrigin=this.parsedOrigin.sameOrigin);var i=n.generateTracePayload(this.parsedOrigin);if(i&&(i.newrelicHeader||i.traceContextParentHeader))if(e[0]&&e[0].headers)s(e[0].headers,i)&&(this.dt=i);else{var o={};for(var a in r)o[a]=r[a];o.headers=new Headers(r.headers||{}),s(o.headers,i)&&(this.dt=i),e.length>1?e[1]=o:e.push(o)}}function s(e,t){var r=!1;return t.newrelicHeader&&(e.set("newrelic",t.newrelicHeader),r=!0),t.traceContextParentHeader&&(e.set("traceparent",t.traceContextParentHeader),t.traceContextStateHeader&&e.set("tracestate",t.traceContextStateHeader),r=!0),r}}function y(e,t){this.params={},this.metrics={},this.startTime=(0,S.t)(),this.dt=t,e.length>=1&&(this.target=e[0]),e.length>=2&&(this.opts=e[1]);var r,n=this.opts||{},i=this.target;"string"==typeof i?r=i:"object"==typeof i&&i instanceof le?r=i.url:p.gm?.URL&&"object"==typeof i&&i instanceof URL&&(r=i.href),pe(this,r);var o=(""+(i&&i instanceof le&&i.method||n.method||"GET")).toUpperCase();this.params.method=o,this.body=n.body,this.txSize=G(n.body)||0}function w(e,t){if(this.endTime=(0,S.t)(),this.params||(this.params={}),(0,ce.iW)(this.params))return;let n;this.params.status=t?t.status:0,"string"==typeof this.rxSize&&this.rxSize.length>0&&(n=+this.rxSize);const i={txSize:this.txSize,rxSize:n,duration:(0,S.t)()-this.startTime};r("xhr",[this.params,i,this.startTime,this.endTime,"fetch"],this,a.K7.ajax)}function R(e){const t=this.params,n=this.metrics;if(!this.ended){this.ended=!0;for(let t=0;t<de;t++)e.removeEventListener(ue[t],this.listener,!1);t.aborted||(0,ce.iW)(t)||(n.duration=(0,S.t)()-this.startTime,this.loadCaptureCalled||4!==e.readyState?null==t.status&&(t.status=0):E(this,e),n.cbTime=this.cbTime,r("xhr",[t,n,this.startTime,this.endTime,"xhr"],this,a.K7.ajax))}}function E(e,r){e.params.status=r.status;var n=function(e,t){var r=e.responseType;return"json"===r&&null!==t?t:"arraybuffer"===r||"blob"===r||"json"===r?G(e.response):"text"===r||""===r||void 0===r?G(e.responseText):void 0}(r,e.lastSize);if(n&&(e.metrics.rxSize=n),e.sameOrigin){var i=r.getResponseHeader("X-NewRelic-App-Data");i&&((0,x.p)(_.rs,["Ajax/CrossApplicationTracing/Header/Seen"],void 0,a.K7.metrics,t),e.params.cat=i.split(", ").pop())}e.loadCaptureCalled=!0}t.on("new-xhr",i),t.on("open-xhr-start",o),t.on("open-xhr-end",s),t.on("send-xhr-start",c),t.on("xhr-cb-time",u),t.on("xhr-load-added",d),t.on("xhr-load-removed",l),t.on("xhr-resolved",f),t.on("addEventListener-end",h),t.on("removeEventListener-end",g),t.on("fn-end",v),t.on("fetch-before-start",b),t.on("fetch-start",y),t.on("fn-start",m),t.on("fetch-done",w)}(e,this.ee,this.handler,this.dt),this.importAggregator(e)}}function pe(e,t){var r=(0,ie.D)(t),n=e.params||e;n.hostname=r.hostname,n.port=r.port,n.protocol=r.protocol,n.host=r.hostname+":"+r.port,n.pathname=r.pathname,e.parsedOrigin=r,e.sameOrigin=r.sameOrigin}const ge={},me=["pushState","replaceState"];function ve(e){const t=function(e){return(e||B.ee).get("history")}(e);return!p.RI||ge[t.debugId]++||(ge[t.debugId]=1,(0,W.YM)(t).inPlace(window.history,me,"-")),t}var be=i(3738);const{He:ye,bD:we,d3:Re,Kp:xe,TZ:Ee,Lc:Te,uP:Ae,Rz:Se}=be;class Ne extends b{static featureName=Ee;constructor(e,t=!0){super(e,Ee,t);if(!(0,m.V)(this.agentIdentifier))return void this.deregisterDrain();const r=this.ee;let n;ve(r),this.eventsEE=(0,F.u)(r),this.eventsEE.on(Ae,(function(e,t){this.bstStart=(0,S.t)()})),this.eventsEE.on(Te,(function(e,t){(0,x.p)("bst",[e[0],t,this.bstStart,(0,S.t)()],void 0,a.K7.sessionTrace,r)})),r.on(Se+Re,(function(e){this.time=(0,S.t)(),this.startPath=location.pathname+location.hash})),r.on(Se+xe,(function(e){(0,x.p)("bstHist",[location.pathname+location.hash,this.startPath,this.time],void 0,a.K7.sessionTrace,r)}));try{n=new PerformanceObserver((e=>{const t=e.getEntries();(0,x.p)(ye,[t],void 0,a.K7.sessionTrace,r)})),n.observe({type:we,buffered:!0})}catch(e){}this.importAggregator(e,{resourceObserver:n})}}var _e=i(2614);class Oe extends b{static featureName=t.TZ;#i;#o;constructor(e,r=!0){let n;super(e,t.TZ,r),this.replayRunning=!1,this.#o=e;try{n=JSON.parse(localStorage.getItem("".concat(_e.H3,"_").concat(_e.uh)))}catch(e){}(0,g.SR)(e.agentIdentifier)&&this.ee.on(t.G4.RECORD,(()=>this.#a())),this.#s(n)?(this.#i=n?.sessionReplayMode,this.#c()):this.importAggregator(e),this.ee.on("err",(e=>{this.replayRunning&&(this.errorNoticed=!0,(0,x.p)(t.G4.ERROR_DURING_REPLAY,[e],void 0,this.featureName,this.ee))})),this.ee.on(t.G4.REPLAY_RUNNING,(e=>{this.replayRunning=e}))}#s(e){return e&&(e.sessionReplayMode===_e.g.FULL||e.sessionReplayMode===_e.g.ERROR)||(0,g.Aw)(this.agentIdentifier)}#u=!1;async#c(e){if(!this.#u){this.#u=!0;try{const{Recorder:t}=await Promise.all([i.e(478),i.e(249)]).then(i.bind(i,8589));this.recorder??=new t({mode:this.#i,agentIdentifier:this.agentIdentifier,trigger:e,ee:this.ee,agentRef:this.#o}),this.recorder.startRecording(),this.abortHandler=this.recorder.stopRecording}catch(e){}this.importAggregator(this.#o,{recorder:this.recorder,errorNoticed:this.errorNoticed})}}#a(){this.featAggregate?this.featAggregate.mode!==_e.g.FULL&&this.featAggregate.initializeRecording(_e.g.FULL,!0):(this.#i=_e.g.FULL,this.#c(t.Qb.API),this.recorder&&this.recorder.parent.mode!==_e.g.FULL&&(this.recorder.parent.mode=_e.g.FULL,this.recorder.stopRecording(),this.recorder.startRecording(),this.abortHandler=this.recorder.stopRecording))}}var Ie=i(3962);class Pe extends b{static featureName=Ie.TZ;constructor(e,t=!0){if(super(e,Ie.TZ,t),!p.RI||!(0,R.dV)().o.MO)return;const r=ve(this.ee);Ie.tC.forEach((e=>{(0,T.sp)(e,(e=>{a(e)}),!0)}));const n=()=>(0,x.p)("newURL",[(0,S.t)(),""+window.location],void 0,this.featureName,this.ee);r.on("pushState-end",n),r.on("replaceState-end",n);try{this.removeOnAbort=new AbortController}catch(e){}(0,T.sp)("popstate",(e=>(0,x.p)("newURL",[e.timeStamp,""+window.location],void 0,this.featureName,this.ee)),!0,this.removeOnAbort?.signal);let i=!1;const o=new((0,R.dV)().o.MO)(((e,t)=>{i||(i=!0,requestAnimationFrame((()=>{(0,x.p)("newDom",[(0,S.t)()],void 0,this.featureName,this.ee),i=!1})))})),a=(0,v.s)((e=>{(0,x.p)("newUIEvent",[e],void 0,this.featureName,this.ee),o.observe(document.body,{attributes:!0,childList:!0,subtree:!0,characterData:!0})}),100,{leading:!0});this.abortHandler=function(){this.removeOnAbort?.abort(),o.disconnect(),this.abortHandler=void 0},this.importAggregator(e,{domObserver:o})}}var je=i(7378);const Ce={},ke=["appendChild","insertBefore","replaceChild"];function Le(e){const t=function(e){return(e||B.ee).get("jsonp")}(e);if(!p.RI||Ce[t.debugId])return t;Ce[t.debugId]=!0;var r=(0,W.YM)(t),n=/[?&](?:callback|cb)=([^&#]+)/,i=/(.*)\.([^.]+)/,o=/^(\w+)(\.|$)(.*)$/;function a(e,t){if(!e)return t;const r=e.match(o),n=r[1];return a(r[3],t[n])}return r.inPlace(Node.prototype,ke,"dom-"),t.on("dom-start",(function(e){!function(e){if(!e||"string"!=typeof e.nodeName||"script"!==e.nodeName.toLowerCase())return;if("function"!=typeof e.addEventListener)return;var o=(s=e.src,c=s.match(n),c?c[1]:null);var s,c;if(!o)return;var u=function(e){var t=e.match(i);if(t&&t.length>=3)return{key:t[2],parent:a(t[1],window)};return{key:e,parent:window}}(o);if("function"!=typeof u.parent[u.key])return;var d={};function l(){t.emit("jsonp-end",[],d),e.removeEventListener("load",l,(0,T.jT)(!1)),e.removeEventListener("error",f,(0,T.jT)(!1))}function f(){t.emit("jsonp-error",[],d),t.emit("jsonp-end",[],d),e.removeEventListener("load",l,(0,T.jT)(!1)),e.removeEventListener("error",f,(0,T.jT)(!1))}r.inPlace(u.parent,[u.key],"cb-",d),e.addEventListener("load",l,(0,T.jT)(!1)),e.addEventListener("error",f,(0,T.jT)(!1)),t.emit("new-jsonp",[e.src],d)}(e[0])})),t}const He={};function Me(e){const t=function(e){return(e||B.ee).get("promise")}(e);if(He[t.debugId])return t;He[t.debugId]=!0;var r=t.context,n=(0,W.YM)(t),i=p.gm.Promise;return i&&function(){function e(r){var o=t.context(),a=n(r,"executor-",o,null,!1);const s=Reflect.construct(i,[a],e);return t.context(s).getCtx=function(){return o},s}p.gm.Promise=e,Object.defineProperty(e,"name",{value:"Promise"}),e.toString=function(){return i.toString()},Object.setPrototypeOf(e,i),["all","race"].forEach((function(r){const n=i[r];e[r]=function(e){let i=!1;[...e||[]].forEach((e=>{this.resolve(e).then(a("all"===r),a(!1))}));const o=n.apply(this,arguments);return o;function a(e){return function(){t.emit("propagate",[null,!i],o,!1,!1),i=i||!e}}}})),["resolve","reject"].forEach((function(r){const n=i[r];e[r]=function(e){const r=n.apply(this,arguments);return e!==r&&t.emit("propagate",[e,!0],r,!1,!1),r}})),e.prototype=i.prototype;const o=i.prototype.then;i.prototype.then=function(...e){var i=this,a=r(i);a.promise=i,e[0]=n(e[0],"cb-",a,null,!1),e[1]=n(e[1],"cb-",a,null,!1);const s=o.apply(this,e);return a.nextPromise=s,t.emit("propagate",[i,!0],s,!1,!1),s},i.prototype.then[W.Jt]=o,t.on("executor-start",(function(e){e[0]=n(e[0],"resolve-",this,null,!1),e[1]=n(e[1],"resolve-",this,null,!1)})),t.on("executor-err",(function(e,t,r){e[1](r)})),t.on("cb-end",(function(e,r,n){t.emit("propagate",[n,!0],this.nextPromise,!1,!1)})),t.on("propagate",(function(e,r,n){this.getCtx&&!r||(this.getCtx=function(){if(e instanceof Promise)var r=t.context(e);return r&&r.getCtx?r.getCtx():this})}))}(),t}const De={},Ke="setTimeout",Ue="setInterval",Ve="clearTimeout",Ge="-start",Fe=[Ke,"setImmediate",Ue,Ve,"clearImmediate"];function Be(e){const t=function(e){return(e||B.ee).get("timer")}(e);if(De[t.debugId]++)return t;De[t.debugId]=1;var r=(0,W.YM)(t);return r.inPlace(p.gm,Fe.slice(0,2),Ke+"-"),r.inPlace(p.gm,Fe.slice(2,3),Ue+"-"),r.inPlace(p.gm,Fe.slice(3),Ve+"-"),t.on(Ue+Ge,(function(e,t,n){e[0]=r(e[0],"fn-",null,n)})),t.on(Ke+Ge,(function(e,t,n){this.method=n,this.timerDuration=isNaN(e[1])?0:+e[1],e[0]=r(e[0],"fn-",this,n)})),t}const We={};function ze(e){const t=function(e){return(e||B.ee).get("mutation")}(e);if(!p.RI||We[t.debugId])return t;We[t.debugId]=!0;var r=(0,W.YM)(t),n=p.gm.MutationObserver;return n&&(window.MutationObserver=function(e){return this instanceof n?new n(r(e,"fn-")):n.apply(this,arguments)},MutationObserver.prototype=n.prototype),t}const{TZ:qe,d3:Ze,Kp:Ye,$p:Xe,wW:$e,e5:Je,tH:Qe,uP:et,rw:tt,Lc:rt}=je;class nt extends b{static featureName=qe;constructor(e,t=!0){if(super(e,qe,t),!p.RI)return;try{this.removeOnAbort=new AbortController}catch(e){}let r,n=0;const i=this.ee.get("tracer"),o=Le(this.ee),a=Me(this.ee),s=Be(this.ee),c=Z(this.ee),u=this.ee.get("events"),d=ne(this.ee),l=ve(this.ee),f=ze(this.ee);function h(e,t){l.emit("newURL",[""+window.location,t])}function g(){n++,r=window.location.hash,this[et]=(0,S.t)()}function m(){n--,window.location.hash!==r&&h(0,!0);var e=(0,S.t)();this[Je]=~~this[Je]+e-this[et],this[rt]=e}function v(e,t){e.on(t,(function(){this[t]=(0,S.t)()}))}this.ee.on(et,g),a.on(tt,g),o.on(tt,g),this.ee.on(rt,m),a.on($e,m),o.on($e,m),this.ee.on("fn-err",((...t)=>{t[2]?.__newrelic?.[e.agentIdentifier]||(0,x.p)("function-err",[...t],void 0,this.featureName,this.ee)})),this.ee.buffer([et,rt,"xhr-resolved"],this.featureName),u.buffer([et],this.featureName),s.buffer(["setTimeout"+Ye,"clearTimeout"+Ze,et],this.featureName),c.buffer([et,"new-xhr","send-xhr"+Ze],this.featureName),d.buffer([Qe+Ze,Qe+"-done",Qe+Xe+Ze,Qe+Xe+Ye],this.featureName),l.buffer(["newURL"],this.featureName),f.buffer([et],this.featureName),a.buffer(["propagate",tt,$e,"executor-err","resolve"+Ze],this.featureName),i.buffer([et,"no-"+et],this.featureName),o.buffer(["new-jsonp","cb-start","jsonp-error","jsonp-end"],this.featureName),v(d,Qe+Ze),v(d,Qe+"-done"),v(o,"new-jsonp"),v(o,"jsonp-end"),v(o,"cb-start"),l.on("pushState-end",h),l.on("replaceState-end",h),window.addEventListener("hashchange",h,(0,T.jT)(!0,this.removeOnAbort?.signal)),window.addEventListener("load",h,(0,T.jT)(!0,this.removeOnAbort?.signal)),window.addEventListener("popstate",(function(){h(0,n>1)}),(0,T.jT)(!0,this.removeOnAbort?.signal)),this.abortHandler=this.#n,this.importAggregator(e)}#n(){this.removeOnAbort?.abort(),this.abortHandler=void 0}}var it=i(3333);class ot extends b{static featureName=it.TZ;constructor(e,t=!0){super(e,it.TZ,t);const r=[e.init.page_action.enabled,e.init.performance.capture_marks,e.init.performance.capture_measures,e.init.user_actions.enabled,e.init.performance.resources.enabled];if(p.RI&&(e.init.user_actions.enabled&&(it.Zp.forEach((e=>(0,T.sp)(e,(e=>(0,x.p)("ua",[e],void 0,this.featureName,this.ee)),!0))),it.qN.forEach((e=>(0,T.sp)(e,(e=>(0,x.p)("ua",[e],void 0,this.featureName,this.ee)))))),e.init.performance.resources.enabled&&p.gm.PerformanceObserver?.supportedEntryTypes.includes("resource"))){new PerformanceObserver((e=>{e.getEntries().forEach((e=>{(0,x.p)("browserPerformance.resource",[e],void 0,this.featureName,this.ee)}))})).observe({type:"resource",buffered:!0})}r.some((e=>e))?this.importAggregator(e):this.deregisterDrain()}}var at=i(993),st=i(3785);class ct extends b{static featureName=at.TZ;constructor(e,t=!0){super(e,at.TZ,t);const r=this.ee;this.ee.on("wrap-logger-end",(function([e]){const{level:t,customAttributes:n}=this;(0,st.R)(r,e,n,t)})),this.importAggregator(e)}}new class extends o{constructor(t,r){super(r),p.gm?(this.features={},(0,R.bQ)(this.agentIdentifier,this),this.desiredFeatures=new Set(t.features||[]),this.desiredFeatures.add(w),this.runSoftNavOverSpa=[...this.desiredFeatures].some((e=>e.featureName===a.K7.softNav)),(0,d.j)(this,t,t.loaderType||"agent"),this.run()):(0,e.R)(21)}get config(){return{info:this.info,init:this.init,loader_config:this.loader_config,runtime:this.runtime}}run(){try{const t=u(this.agentIdentifier),r=[...this.desiredFeatures];r.sort(((e,t)=>a.P3[e.featureName]-a.P3[t.featureName])),r.forEach((r=>{if(!t[r.featureName]&&r.featureName!==a.K7.pageViewEvent)return;if(this.runSoftNavOverSpa&&r.featureName===a.K7.spa)return;if(!this.runSoftNavOverSpa&&r.featureName===a.K7.softNav)return;const n=function(e){switch(e){case a.K7.ajax:return[a.K7.jserrors];case a.K7.sessionTrace:return[a.K7.ajax,a.K7.pageViewEvent];case a.K7.sessionReplay:return[a.K7.sessionTrace];case a.K7.pageViewTiming:return[a.K7.pageViewEvent];default:return[]}}(r.featureName).filter((e=>!(e in this.features)));n.length>0&&(0,e.R)(36,{targetFeature:r.featureName,missingDependencies:n}),this.features[r.featureName]=new r(this)}))}catch(t){(0,e.R)(22,t);for(const e in this.features)this.features[e].abortHandler?.();const r=(0,R.Zm)();delete r.initializedAgents[this.agentIdentifier]?.api,delete r.initializedAgents[this.agentIdentifier]?.features,delete this.sharedAggregator;return r.ee.get(this.agentIdentifier).abort(),!1}}}({features:[he,w,N,Ne,Oe,O,M,ot,ct,Pe,nt],loaderType:"spa"})})()})(); </script> <link rel="preconnect" href="https://fonts.googleapis.com"> <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin> <link rel="preconnect" href="https://use.typekit.net" crossorigin> <link rel="preconnect" href="https://p.typekit.net" crossorigin> <link href="https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap" rel="stylesheet"> <link media="screen" href="https://use.typekit.net/fdo4xio.css" rel="preload" as="style" onload="this.rel='stylesheet'"> <meta content="Roger Ebert" name="application-name"> <meta content="#FFFFFF" name="msapplication-TileColor"> <!-- Google Tag Manager --> <script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); })(window,document,'script','dataLayer','GTM-T9HKKFWR');</script> <!-- End Google Tag Manager --> <!-- Advally Ads Custom Configuration --> <script type="text/javascript">document.pageTypeLabel="single-review";</script> <!-- Social Warfare v4.5.4 https://warfareplugins.com - BEGINNING OF OUTPUT --> <style> @font-face { font-family: "sw-icon-font"; src:url("https://www.rogerebert.com/wp-content/plugins/social-warfare/assets/fonts/sw-icon-font.eot?ver=4.5.4"); src:url("https://www.rogerebert.com/wp-content/plugins/social-warfare/assets/fonts/sw-icon-font.eot?ver=4.5.4#iefix") format("embedded-opentype"), url("https://www.rogerebert.com/wp-content/plugins/social-warfare/assets/fonts/sw-icon-font.woff?ver=4.5.4") format("woff"), url("https://www.rogerebert.com/wp-content/plugins/social-warfare/assets/fonts/sw-icon-font.ttf?ver=4.5.4") format("truetype"), url("https://www.rogerebert.com/wp-content/plugins/social-warfare/assets/fonts/sw-icon-font.svg?ver=4.5.4#1445203416") format("svg"); font-weight: normal; font-style: normal; font-display:block; } </style> <!-- Social Warfare v4.5.4 https://warfareplugins.com - END OF OUTPUT --> <!-- Search Engine Optimization by Rank Math - https://rankmath.com/ --> <title>Barber movie review &amp; film summary (2023) | Roger Ebert</title> <meta name="description" content="Barber is a fairly rote crime drama, but a fascinating glimpse of a world in transition."/> <meta name="robots" content="follow, index, max-snippet:-1, max-video-preview:-1, max-image-preview:large"/> <link rel="canonical" href="https://www.rogerebert.com/reviews/barber-movie-review-2023" /> <meta property="og:locale" content="en_US" /> <meta property="og:type" content="article" /> <meta property="og:title" content="Barber movie review &amp; film summary (2023) | Roger Ebert" /> <meta property="og:description" content="Barber is a fairly rote crime drama, but a fascinating glimpse of a world in transition." /> <meta property="og:url" content="https://www.rogerebert.com/reviews/barber-movie-review-2023" /> <meta property="og:site_name" content="Roger Ebert" /> <meta property="article:publisher" content="https://www.facebook.com/RogerEbert/" /> <meta property="article:section" content="Reviews" /> <meta property="fb:app_id" content="966242223397117" /> <meta property="og:image" content="https://www.rogerebert.com/wp-content/uploads/2024/07/Barber.jpg" /> <meta property="og:image:secure_url" content="https://www.rogerebert.com/wp-content/uploads/2024/07/Barber.jpg" /> <meta property="og:image:width" content="1200" /> <meta property="og:image:height" content="500" /> <meta property="og:image:alt" content="Barber" /> <meta property="og:image:type" content="image/jpeg" /> <meta name="twitter:card" content="summary_large_image" /> <meta name="twitter:title" content="Barber movie review &amp; film summary (2023) | Roger Ebert" /> <meta name="twitter:description" content="Barber is a fairly rote crime drama, but a fascinating glimpse of a world in transition." /> <meta name="twitter:site" content="@ebertchicago" /> <meta name="twitter:creator" content="@ebertchicago" /> <meta name="twitter:image" content="https://www.rogerebert.com/wp-content/uploads/2024/07/Barber.jpg" /> <script type="application/ld+json" class="rank-math-schema">{"@context":"https://schema.org","@graph":[{"@type":"BreadcrumbList","@id":"https://www.rogerebert.com/reviews/barber-movie-review-2023#breadcrumb","itemListElement":[{"@type":"ListItem","position":"1","item":{"@id":"https://www.rogerebert.com/reviews","name":"Reviews"}},{"@type":"ListItem","position":"2","item":{"@id":"https://www.rogerebert.com/reviews/barber-movie-review-2023","name":"Barber"}}]}]}</script> <!-- /Rank Math WordPress SEO plugin --> <link rel='dns-prefetch' href='//widget.justwatch.com' /> <!-- rogerebert.com is managing ads with Advanced Ads 1.56.1 – https://wpadvancedads.com/ --><script id="roger-ready"> window.advanced_ads_ready=function(e,a){a=a||"complete";var d=function(e){return"interactive"===a?"loading"!==e:"complete"===e};d(document.readyState)?e():document.addEventListener("readystatechange",(function(a){d(a.target.readyState)&&e()}),{once:"interactive"===a})},window.advanced_ads_ready_queue=window.advanced_ads_ready_queue||[]; </script> <link rel='stylesheet' id='social-warfare-block-css-css' href='https://www.rogerebert.com/wp-content/plugins/social-warfare/assets/js/post-editor/dist/blocks.style.build.css?ver=6.7' type='text/css' media='all' /> <style id='rank-math-toc-block-style-inline-css' type='text/css'> .wp-block-rank-math-toc-block nav ol{counter-reset:item}.wp-block-rank-math-toc-block nav ol li{display:block}.wp-block-rank-math-toc-block nav ol li:before{content:counters(item, ".") ". ";counter-increment:item} </style> <style id='rank-math-rich-snippet-style-inline-css' type='text/css'> /*! * Plugin: Rank Math * URL: https://rankmath.com/wordpress/plugin/seo-suite/ * Name: rank-math-review-snippet.css */@-webkit-keyframes spin{0%{-webkit-transform:rotate(0deg)}100%{-webkit-transform:rotate(-360deg)}}@keyframes spin{0%{-webkit-transform:rotate(0deg)}100%{-webkit-transform:rotate(-360deg)}}@keyframes bounce{from{-webkit-transform:translateY(0px);transform:translateY(0px)}to{-webkit-transform:translateY(-5px);transform:translateY(-5px)}}@-webkit-keyframes bounce{from{-webkit-transform:translateY(0px);transform:translateY(0px)}to{-webkit-transform:translateY(-5px);transform:translateY(-5px)}}@-webkit-keyframes loading{0%{background-size:20% 50% ,20% 50% ,20% 50%}20%{background-size:20% 20% ,20% 50% ,20% 50%}40%{background-size:20% 100%,20% 20% ,20% 50%}60%{background-size:20% 50% ,20% 100%,20% 20%}80%{background-size:20% 50% ,20% 50% ,20% 100%}100%{background-size:20% 50% ,20% 50% ,20% 50%}}@keyframes loading{0%{background-size:20% 50% ,20% 50% ,20% 50%}20%{background-size:20% 20% ,20% 50% ,20% 50%}40%{background-size:20% 100%,20% 20% ,20% 50%}60%{background-size:20% 50% ,20% 100%,20% 20%}80%{background-size:20% 50% ,20% 50% ,20% 100%}100%{background-size:20% 50% ,20% 50% ,20% 50%}}:root{--rankmath-wp-adminbar-height: 0}#rank-math-rich-snippet-wrapper{overflow:hidden}#rank-math-rich-snippet-wrapper h5.rank-math-title{display:block;font-size:18px;line-height:1.4}#rank-math-rich-snippet-wrapper .rank-math-review-image{float:right;max-width:40%;margin-left:15px}#rank-math-rich-snippet-wrapper .rank-math-review-data{margin-bottom:15px}#rank-math-rich-snippet-wrapper .rank-math-total-wrapper{width:100%;padding:0 0 20px 0;float:left;clear:both;position:relative;-webkit-box-sizing:border-box;box-sizing:border-box}#rank-math-rich-snippet-wrapper .rank-math-total-wrapper .rank-math-total{border:0;display:block;margin:0;width:auto;float:left;text-align:left;padding:0;font-size:24px;line-height:1;font-weight:700;-webkit-box-sizing:border-box;box-sizing:border-box;overflow:hidden}#rank-math-rich-snippet-wrapper .rank-math-total-wrapper .rank-math-review-star{float:left;margin-left:15px;margin-top:5px;position:relative;z-index:99;line-height:1}#rank-math-rich-snippet-wrapper .rank-math-total-wrapper .rank-math-review-star .rank-math-review-result-wrapper{display:inline-block;white-space:nowrap;position:relative;color:#e7e7e7}#rank-math-rich-snippet-wrapper .rank-math-total-wrapper .rank-math-review-star .rank-math-review-result-wrapper .rank-math-review-result{position:absolute;top:0;left:0;overflow:hidden;white-space:nowrap;color:#ffbe01}#rank-math-rich-snippet-wrapper .rank-math-total-wrapper .rank-math-review-star .rank-math-review-result-wrapper i{font-size:18px;-webkit-text-stroke-width:1px;font-style:normal;padding:0 2px;line-height:inherit}#rank-math-rich-snippet-wrapper .rank-math-total-wrapper .rank-math-review-star .rank-math-review-result-wrapper i:before{content:"\2605"}body.rtl #rank-math-rich-snippet-wrapper .rank-math-review-image{float:left;margin-left:0;margin-right:15px}body.rtl #rank-math-rich-snippet-wrapper .rank-math-total-wrapper .rank-math-total{float:right}body.rtl #rank-math-rich-snippet-wrapper .rank-math-total-wrapper .rank-math-review-star{float:right;margin-left:0;margin-right:15px}body.rtl #rank-math-rich-snippet-wrapper .rank-math-total-wrapper .rank-math-review-star .rank-math-review-result{left:auto;right:0}@media screen and (max-width: 480px){#rank-math-rich-snippet-wrapper .rank-math-review-image{display:block;max-width:100%;width:100%;text-align:center;margin-right:0}#rank-math-rich-snippet-wrapper .rank-math-review-data{clear:both}}.clear{clear:both} </style> <style id='classic-theme-styles-inline-css' type='text/css'> /*! This file is auto-generated */ .wp-block-button__link{color:#fff;background-color:#32373c;border-radius:9999px;box-shadow:none;text-decoration:none;padding:calc(.667em + 2px) calc(1.333em + 2px);font-size:1.125em}.wp-block-file__button{background:#32373c;color:#fff;text-decoration:none} </style> <style id='global-styles-inline-css' type='text/css'> :root{--wp--preset--aspect-ratio--square: 1;--wp--preset--aspect-ratio--4-3: 4/3;--wp--preset--aspect-ratio--3-4: 3/4;--wp--preset--aspect-ratio--3-2: 3/2;--wp--preset--aspect-ratio--2-3: 2/3;--wp--preset--aspect-ratio--16-9: 16/9;--wp--preset--aspect-ratio--9-16: 9/16;--wp--preset--color--black: #000000;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #ffffff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2e2e;--wp--preset--color--luminous-vivid-orange: #ff6900;--wp--preset--color--luminous-vivid-amber: #fcb900;--wp--preset--color--light-green-cyan: #7bdcb5;--wp--preset--color--vivid-green-cyan: #00d084;--wp--preset--color--pale-cyan-blue: #8ed1fc;--wp--preset--color--vivid-cyan-blue: #0693e3;--wp--preset--color--vivid-purple: #9b51e0;--wp--preset--color--primary-light: #F8F6F1;--wp--preset--color--primary-grey: #CCCCCC;--wp--preset--color--primary-gold: #C0A574;--wp--preset--color--secondary-bronze: #945B48;--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg,rgba(6,147,227,1) 0%,rgb(155,81,224) 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg,rgba(252,185,0,1) 0%,rgba(255,105,0,1) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg,rgba(255,105,0,1) 0%,rgb(207,46,46) 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%);--wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%);--wp--preset--gradient--blush-light-purple: linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%);--wp--preset--gradient--blush-bordeaux: linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%);--wp--preset--gradient--luminous-dusk: linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%);--wp--preset--gradient--pale-ocean: linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%);--wp--preset--gradient--electric-grass: linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%);--wp--preset--gradient--midnight: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);--wp--preset--font-size--small: 16px;--wp--preset--font-size--medium: 20px;--wp--preset--font-size--large: 30px;--wp--preset--font-size--x-large: 44px;--wp--preset--spacing--20: 0.44rem;--wp--preset--spacing--30: 0.67rem;--wp--preset--spacing--40: 1rem;--wp--preset--spacing--50: 1.5rem;--wp--preset--spacing--60: 2.25rem;--wp--preset--spacing--70: 3.38rem;--wp--preset--spacing--80: 5.06rem;--wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2);--wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4);--wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2);--wp--preset--shadow--outlined: 6px 6px 0px -3px rgba(255, 255, 255, 1), 6px 6px rgba(0, 0, 0, 1);--wp--preset--shadow--crisp: 6px 6px 0px rgba(0, 0, 0, 1);}:where(.is-layout-flex){gap: 0.5em;}:where(.is-layout-grid){gap: 0.5em;}body .is-layout-flex{display: flex;}.is-layout-flex{flex-wrap: wrap;align-items: center;}.is-layout-flex > :is(*, div){margin: 0;}body .is-layout-grid{display: grid;}.is-layout-grid > :is(*, div){margin: 0;}:where(.wp-block-columns.is-layout-flex){gap: 2em;}:where(.wp-block-columns.is-layout-grid){gap: 2em;}:where(.wp-block-post-template.is-layout-flex){gap: 1.25em;}:where(.wp-block-post-template.is-layout-grid){gap: 1.25em;}.has-black-color{color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-color{color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-color{color: var(--wp--preset--color--white) !important;}.has-pale-pink-color{color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-color{color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-color{color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-color{color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-color{color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-color{color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-color{color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-color{color: var(--wp--preset--color--vivid-purple) !important;}.has-black-background-color{background-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-background-color{background-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-background-color{background-color: var(--wp--preset--color--white) !important;}.has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-background-color{background-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-background-color{background-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-background-color{background-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-background-color{background-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-background-color{background-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-background-color{background-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-background-color{background-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-background-color{background-color: var(--wp--preset--color--vivid-purple) !important;}.has-black-border-color{border-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-border-color{border-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-border-color{border-color: var(--wp--preset--color--white) !important;}.has-pale-pink-border-color{border-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-border-color{border-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-border-color{border-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-border-color{border-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-border-color{border-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-border-color{border-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-border-color{border-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-border-color{border-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-border-color{border-color: var(--wp--preset--color--vivid-purple) !important;}.has-vivid-cyan-blue-to-vivid-purple-gradient-background{background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;}.has-light-green-cyan-to-vivid-green-cyan-gradient-background{background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;}.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;}.has-luminous-vivid-orange-to-vivid-red-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;}.has-very-light-gray-to-cyan-bluish-gray-gradient-background{background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;}.has-cool-to-warm-spectrum-gradient-background{background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;}.has-blush-light-purple-gradient-background{background: var(--wp--preset--gradient--blush-light-purple) !important;}.has-blush-bordeaux-gradient-background{background: var(--wp--preset--gradient--blush-bordeaux) !important;}.has-luminous-dusk-gradient-background{background: var(--wp--preset--gradient--luminous-dusk) !important;}.has-pale-ocean-gradient-background{background: var(--wp--preset--gradient--pale-ocean) !important;}.has-electric-grass-gradient-background{background: var(--wp--preset--gradient--electric-grass) !important;}.has-midnight-gradient-background{background: var(--wp--preset--gradient--midnight) !important;}.has-small-font-size{font-size: var(--wp--preset--font-size--small) !important;}.has-medium-font-size{font-size: var(--wp--preset--font-size--medium) !important;}.has-large-font-size{font-size: var(--wp--preset--font-size--large) !important;}.has-x-large-font-size{font-size: var(--wp--preset--font-size--x-large) !important;} :where(.wp-block-post-template.is-layout-flex){gap: 1.25em;}:where(.wp-block-post-template.is-layout-grid){gap: 1.25em;} :where(.wp-block-columns.is-layout-flex){gap: 2em;}:where(.wp-block-columns.is-layout-grid){gap: 2em;} :root :where(.wp-block-pullquote){font-size: 1.5em;line-height: 1.6;} </style> <style id='dominant-color-styles-inline-css' type='text/css'> img[data-dominant-color]:not(.has-transparency) { background-color: var(--dominant-color); } </style> <link rel='stylesheet' id='main-css-css' href='https://www.rogerebert.com/wp-content/themes/roger-ebert/dist/css/main.min.css?ver=1739170101' type='text/css' media='' /> <link rel='stylesheet' id='social_warfare-css' href='https://www.rogerebert.com/wp-content/plugins/social-warfare/assets/css/style.min.css?ver=4.5.4' type='text/css' media='all' /> <script type="text/javascript" src="https://www.rogerebert.com/wp-includes/js/jquery/jquery.min.js?ver=latest" id="jquery-js"></script> <script type="text/javascript" src="https://www.rogerebert.com/wp-content/mu-plugins/roger-ebert/template/custom-facets/custom-facet.js?ver=1739170079" id="custom-facet-js-js"></script> <script type="text/javascript" id="advanced-ads-advanced-js-js-extra"> /* <![CDATA[ */ var advads_options = {"blog_id":"1","privacy":{"enabled":false,"state":"not_needed"}}; /* ]]> */ </script> <script type="text/javascript" src="https://www.rogerebert.com/wp-content/plugins/advanced-ads/public/assets/js/advanced.min.js?ver=1.56.1" id="advanced-ads-advanced-js-js"></script> <script type="text/javascript" id="advanced_ads_pro/visitor_conditions-js-extra"> /* <![CDATA[ */ var advanced_ads_pro_visitor_conditions = {"referrer_cookie_name":"advanced_ads_pro_visitor_referrer","referrer_exdays":"365","page_impr_cookie_name":"advanced_ads_page_impressions","page_impr_exdays":"3650"}; /* ]]> */ </script> <script type="text/javascript" src="https://www.rogerebert.com/wp-content/plugins/advanced-ads-pro/modules/advanced-visitor-conditions/inc/conditions.min.js?ver=2.28.0" id="advanced_ads_pro/visitor_conditions-js"></script> <link rel='shortlink' href='https://www.rogerebert.com/?p=96598' /> <meta name="generator" content="dominant-color-images 1.1.2"> <meta name="generator" content="performance-lab 3.6.1; plugins: dominant-color-images, speculation-rules, webp-uploads"> <meta name="generator" content="webp-uploads 2.3.0"> <script type="text/javascript"> var advadsCfpQueue = []; var advadsCfpAd = function( adID ){ if ( 'undefined' == typeof advadsProCfp ) { advadsCfpQueue.push( adID ) } else { advadsProCfp.addElement( adID ) } }; </script> <meta name="generator" content="speculation-rules 1.3.1"> <script async src="https://securepubads.g.doubleclick.net/tag/js/gpt.js"></script> <script type="text/javascript" id="AdvallyRules" src="https://cdn.adligature.com/rogerebert.com/prod/rules.js"></script> <link rel="stylesheet" type="text/css" id="AdvallyStyles" href="https://cdn.adligature.com/rogerebert.com/prod/rules.css"></link> <script type="text/javascript"> // Handle LazyLoaded content including ads document.addEventListener('facetwp-loaded', function(e) { advally.scanNew(); }); // Set custom targeting for page var advally = advally || {}; advally.cmd = advally.cmd || []; advally.cmd.push(function() { advally.Page.setTargeting('wp-page', document.pageTypeLabel); }); </script> <link rel="icon" href="https://www.rogerebert.com/wp-content/uploads/2024/07/cropped-favicon-196x196-1-32x32.png" sizes="32x32" /> <link rel="icon" href="https://www.rogerebert.com/wp-content/uploads/2024/07/cropped-favicon-196x196-1-192x192.png" sizes="192x192" /> <link rel="apple-touch-icon" href="https://www.rogerebert.com/wp-content/uploads/2024/07/cropped-favicon-196x196-1-180x180.png" /> <meta name="msapplication-TileImage" content="https://www.rogerebert.com/wp-content/uploads/2024/07/cropped-favicon-196x196-1-270x270.png" /> </head> <body class="review-template-default single single-review postid-96598 no-sidebar"> <!-- Google Tag Manager (noscript) --> <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-T9HKKFWR" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript> <!-- End Google Tag Manager (noscript) --> <div id="page" class="site"> <header id="masthead" class="site-header fixed w-full bg-white top-0 left-0 right-0 menu-top z-50"> <div class="border-b border-[#cccccc] border-solid max-w-full w-full"> <div class="max-w-[1440px] m-auto flex p-6 sm:px-8 justify-between items-center"> <a href="https://www.rogerebert.com" rel="home" class="w-[200px] sm:w-[270px]" aria-label="Roger Ebert homepage"> <img width="270" height="47" fetchpriority="high" src="https://www.rogerebert.com/wp-content/themes/roger-ebert/source/images/roger-ebert-logo.svg" alt="Roger Ebert Logo"> </a> <a href="/search" class="ml-auto mr-0 sm:mr-5 block lg:hidden" aria-label="Site search"> <img width="21" height="21" fetchpriority="high" src="https://www.rogerebert.com/wp-content/themes/roger-ebert/source/images/search-thin.svg" alt="Search Icon"> </a> <a href="/prime" class="gold-button lg:ml-auto mr-2 lg:mr-4 hidden sm:block"> Signup </a> <form action="/search" method="get" accept-charset="UTF-8" class="relative hidden lg:block"> <label for="search" class="sr-only">Search in https://www.rogerebert.com</label> <input type="text" placeholder="Search Keywords..." name="q" id="search" class="px-5 bg-primary-light text-sm py-2.5 border border-primary-gold montserrat-500 rounded-full text-base" value="" /> <input type="image" class="absolute right-4 top-3.5" alt="Search" src="https://www.rogerebert.com/wp-content/themes/roger-ebert/source/images/search-icon.svg" /> </form> <div class="mobile-menu overflow-hidden visible w-10 relative h-5 flex items-center justify-end cursor-pointer xl:invisible xl:w-0"> <span></span> </div> </div> </div> <nav id="site-navigation" class="main-navigation fixed bg-white w-full left-0 right-0 top-24 m-auto flex px-2 xl:px-8 py-4 justify-center items-center invisible opacity-0 bottom-0 right-2/4 top-[84px] sm:top-[96px] xl:absolue xl:bottom-auto xl:right-auto xl:visible xl:opacity-100"> <div class="menu-primary-menu-container"><ul id="primary-menu" class="menu"><li id="menu-item-214879" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-214879"><a href="/reviews">Movie Reviews</a></li> <li id="menu-item-214880" class="great-movies menu-item menu-item-type-custom menu-item-object-custom menu-item-214880"><a href="/great-movies">Great Movies</a></li> <li id="menu-item-214881" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-214881"><a href="/streaming">TV/Streaming</a></li> <li id="menu-item-214882" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-214882"><a href="/interviews">Interviews</a></li> <li id="menu-item-214883" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-214883"><a href="/collections">Collections</a></li> <li id="menu-item-214884" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-214884"><a href="/festivals">Sundance</a></li> <li id="menu-item-214885" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-214885"><a href="/contributors">Contributors</a></li> </ul></div> </nav> </header> <div id="content" class="site-content"> <div class="row"> <!-- Advally Ad --> <div class="roger-top-leaderboard" id="roger-1520634735"><div class="AdvallyTag" id="AdvAd-TopLeaderboard"></div></div> <div id="primary" class="content-area col-8"> <main id="main" class="site-main"> <header class="page-header m-auto max-w-[1440px] px-6 sm:px-8 flex flex-col justify-center md:grid md:grid-cols-12"> <div class="pt-8 pb-6 xl:pt-12 sm:pt-12 sm:pb-9 xl:pb-14 col-start-1 col-end-13 lg:col-start-3 lg:col-end-11"> <nav aria-label="breadcrumbs" class="rank-math-breadcrumb"><p><a href="https://www.rogerebert.com/reviews">Reviews</a></p></nav><h1 class="page-title mt-2 text-4xl sm:text-5xl sm:mt-3">Barber</h1> <div class="flex items-center justify-start mt-3 sm:mt-4 mb-2 flex-wrap"> <div class="flex justify-start items-center mr-3 sm:mr-4"> <div class="star-box"> <img src="https://www.rogerebert.com/wp-content/themes/roger-ebert/source/images/stars-fill.svg" alt="star rating" class="h-7 filled star30"> <img height="28" width="139" src="https://www.rogerebert.com/wp-content/themes/roger-ebert/source/images/stars.svg" alt="star rating" class="h-7"> </div> </div> <a href="https://www.rogerebert.com/genre/crime" class="px-2 sm:px-3 text-xs montserrat-700 py-[4px] sm:py-2 border border-primary-gold rounded text-primary-gold sm:text-[13px] uppercase transition-colors hover:bg-primary-gold hover:text-white">Crime</a><div class="ml-2 sm:ml-3 text-meta-grey text-xs sm:text-base sm:w-auto font-heading-sans"> 90 minutes <span class="mx-1 sm:mx-2"> ‧ </span>2023 </div> </div> <div class="flex items-center mt-3 sm:mt-5 flex-wrap text-sm sm:text-base"> <div class="flex items-center mb-3 sm:mb-0 mr-4 w-full sm:w-auto text-black font-bold font-heading-sans"> <a href="https://www.rogerebert.com/contributors/sheila-omalley">Sheila O&#039;Malley</a> </div> <div class="font-heading-sans text-meta-grey"> September 22, 2023 </div> <div class="font-heading-sans text-meta-grey ml-4"> 4 min read </div> </div> </div> </header> <section class="m-auto max-w-[1440px] px-6 sm:px-8 flex flex-col justify-center md:grid md:grid-cols-12"> <div class="col-start-1 col-end-13 lg:col-start-3 lg:col-end-11"> <div class="mt-2 mb-6 md:mb-12 lg:mb-20"> <div class="mb-4"><img width="1200" height="500" src="https://www.rogerebert.com/wp-content/uploads/2024/07/Barber.jpg" class="attachment-large size-large wp-post-image" alt="" decoding="async" fetchpriority="high" srcset="https://www.rogerebert.com/wp-content/uploads/2024/07/Barber.jpg 1200w, https://www.rogerebert.com/wp-content/uploads/2024/07/Barber-768x320.jpg 768w" sizes="(max-width: 1200px) 100vw, 1200px" /></div> <article id="post-96598" class="post-96598 review type-review status-publish has-post-thumbnail hentry category-reviews"> <div class="entry-content text-lg sm:text-xl leading-7 sm:leading-8 mb-7 sm:mb-9"> <p>The Dublin of Fintan Connolly&#8217;s &#8220;Barber&#8221; is chilly, insular, and claustrophobic: narrow streets, dark rooms, darker bars, airless. The expansive view from the terrace of private investigator Val Barber&#8217;s penthouse apartment provides no sense of space or freedom. Everyone knows everyone else. Secrets are buried for years. Grudges are intractable. &#8220;Barber&#8221; takes place during the initial months of Covid lockdown (incidentally, when it was filmed). &#8220;Social distancing&#8221; is on everyone&#8217;s minds, and frequent Zoom calls are a novelty. The Dublin in &#8220;Barber,&#8221; indeed the Ireland in &#8220;Barber,&#8221; is torn between the past and the present. There&#8217;s a lot of tension along old fault lines.</p><div class="roger-review-inline-1" style="float: left; " id="roger-895831461"><div class="AdvallyTag" id="AdvAd-ReviewFloat-Left"></div></div> <p>These aspects and more are the wordless background noise of the film, far more compelling than the actual crime being investigated by the rumpled, tormented Barber (<a href="/cast-and-crew/aidan-gillen">Aidan Gillen</a>). The movie is about a disappeared 20-year-old girl, and the Garda are perceived as so corrupt (not to mention potentially involved in a cover-up) that the girl&#8217;s grandmother comes to Barber, asking him to look into it. Barber&#8217;s investigation leads him to unsavory places and into the highest ranks of power. There are a lot of people who don&#8217;t want Barber following these leads. He experiences harassment and a wall of institutional silence and must rely on a whisper network of frightened witnesses who hesitate to even talk to him. It&#8217;s 2020. #MeToo is in the air.</p><div class="roger-review-inline-video" style="margin-left: auto; margin-right: auto; text-align: center; " id="roger-1414631118"><div id="ReviewInlineVideo" style="max-width: 600px; justify-content: center; display: flex; margin: 0px auto;"></div></div> <p>Much of this is reminiscent of the palpable vibe of paranoia and repression evoked in John Banville&#8217;s <em>Christine Falls</em> (written under the pseudonym Benjamin Black), the first of the &#8220;Quirke&#8221; mystery series, taking place in 1950s Dublin, where Quirke, a dry-drunk pathologist, gets sucked into investigating the murder of a young woman. His eventual conclusions implicate the Catholic Church at a time when Ireland was next door to a theocracy. The Catholic Church isn&#8217;t so much a factor in &#8220;Barber,&#8221; but the feeling of looming power lording it over innocents, many of them young women, is the air everyone still breathes. 2020 isn&#8217;t that far away from the 1950s, after all.</p><div class="roger-review-inline-3" style="float: right; " id="roger-346528477"><div class="AdvallyTag" id="AdvAd-ReviewFloat-Right"></div></div> <p>Like Quirke, Barber is a flawed man, struggling silently with his problems, keeping secrets, an old habit, even in a more open time. One of Barber&#8217;s colleagues jokes about the new &#8220;woke Ireland,&#8221; but it seemingly came too late to help the older generation. There are still real fears of blackmail. Barber&#8217;s secrets don&#8217;t weigh heavily on him, or at least he&#8217;s not conscious of the weight. He&#8217;s so used to living a secret life. These are all fascinating aspects of the film (co-written by Connelly and producer <a href="/cast-and-crew/fiona-bergin">Fiona Bergin</a>), avenues of exploration not really taken, although present enough to be thought-provoking. Barber&#8217;s personal life is a mess. He&#8217;s separated from his wife (<a href="/cast-and-crew/helen-behan">Helen Behan</a>), and their daughter Kate (<a href="/cast-and-crew/aisling-kearns">Aisling Kearns</a>) blames her mother for the separation. Kate is permanently injured from a recent car accident, leaving her with cognitive and physical challenges. There&#8217;s a lot of worry about her future, but Barber and his ex-wife can no longer talk to one another. Secrets, secrets.</p><div class="roger-review-inline-2" id="roger-313405062"><div class="AdvallyTag AdvAd-ReviewInline" data-nameprefix="AdvAd-ReviewInline"></div></div> <p>The crime investigation could have benefited from a bit of expansion and deepening, looping together &#8220;woke Ireland&#8221; and all its tensions with the implications of the disappeared girl and what she went through. These connections are there, but not enough. It&#8217;s the difference between plot and story. The plot is what happens&mdash;the disappeared girl, her friends, and frenemies who know more than they&#8217;re telling&mdash;when the story, the real story, is the tensions in Ireland between progress and regression, and the anger progress evokes in those attached to the old ways. Old habits die hard, and those invested in the power structures continuing unabated will not go down without a fight. Barber&#8217;s struggle to bridge the gap in his investigation is identical to his attempt to bridge the gap in himself.</p> <p>Gillen has been doing excellent, nuanced work for years, not just in &#8220;Game of Thrones&#8221; but in films like &#8220;<a href="/reviews/sing-street-2016">Sing Street</a>&#8221; and &#8220;<a href="/reviews/rose-plays-julie-movie-review-2021">Rose Plays Julie</a>&#8221; (where he is truly chilling). Here, he is barely making it through the day, barely able to put a comb through his rumpled hair. He&#8217;s &#8220;quit smoking,&#8221; but Gillen suggests at every moment how much Barber wants a cigarette. He&#8217;s barely holding on. There&#8217;s something ravaged and blank about the expression on his face, the result of living his secrets for so long, the damage those secrets have done to him and those he loves. The real story of &#8220;Barber&#8221; is in Gillen&#8217;s face.</p> <p>The film might have benefited from a lengthier treatment and more exploration of all the themes at work. As it is, &#8220;Barber&#8221; is a fairly rote crime drama but a fascinating glimpse of a world in transition. Even as everyone is &#8220;locked down,&#8221; frozen in their homes, things are at work, and change is on the move. Progress can&#8217;t be reversed, even though the powerful keep trying.</p> <p><em>Now playing in theaters.&nbsp;</em></p><div class="roger-review-inline-4" id="roger-1273563544"><div class="AdvallyTag AdvAd-ReviewInline" data-nameprefix="AdvAd-ReviewInline"></div></div> <div class="swp-content-locator"></div> </div> </article> <div class="flex flex-col p-4 justWatch--widget"> <p class="advertisement--title text-lg font-heading-serif">Now streaming on:</p> <div data-api-key="3868a1d2cf7234d3bb44ffc5455adc18" data-id-type="tmdb" data-id="1089765" data-jw-widget="" data-object-type="movie"></div> <div class="justWatch--poweredBy font-heading-sans text-label-grey text-sm"> <a href="https://www.justwatch.com/" target="_blank" rel="noopener" class="flex items-center">Powered by <img alt="JustWatch" aria-label="JustWatch" height="10px" src="https://widget.justwatch.com/assets/JW_logo_black_10px.svg" class="h-[10px] ml-2" loading="lazy"></a> </div> </div> <div class="swp_social_panel swp_horizontal_panel swp_flat_fresh swp_default_full_color swp_individual_full_color swp_other_full_color scale-100 scale-" data-min-width="1100" data-float-color="#ffffff" data-float="none" data-float-mobile="none" data-transition="slide" data-post-id="96598" ><div class="nc_tweetContainer swp_share_button swp_twitter" data-network="twitter"><a class="nc_tweet swp_share_link" rel="nofollow noreferrer noopener" target="_blank" href="https://twitter.com/intent/tweet?text=Barber&url=https%3A%2F%2Fwww.rogerebert.com%2Freviews%2Fbarber-movie-review-2023" data-link="https://twitter.com/intent/tweet?text=Barber&url=https%3A%2F%2Fwww.rogerebert.com%2Freviews%2Fbarber-movie-review-2023"><span class="swp_count swp_hide"><span class="iconFiller"><span class="spaceManWilly"><i class="sw swp_twitter_icon"></i><span class="swp_share">Tweet</span></span></span></span></a></div><div class="nc_tweetContainer swp_share_button swp_facebook" data-network="facebook"><a class="nc_tweet swp_share_link" rel="nofollow noreferrer noopener" target="_blank" href="https://www.facebook.com/share.php?u=https%3A%2F%2Fwww.rogerebert.com%2Freviews%2Fbarber-movie-review-2023" data-link="https://www.facebook.com/share.php?u=https%3A%2F%2Fwww.rogerebert.com%2Freviews%2Fbarber-movie-review-2023"><span class="swp_count swp_hide"><span class="iconFiller"><span class="spaceManWilly"><i class="sw swp_facebook_icon"></i><span class="swp_share">Share</span></span></span></span></a></div><div class="nc_tweetContainer swp_share_button swp_linkedin" data-network="linkedin"><a class="nc_tweet swp_share_link" rel="nofollow noreferrer noopener" target="_blank" href="https://www.linkedin.com/cws/share?url=https%3A%2F%2Fwww.rogerebert.com%2Freviews%2Fbarber-movie-review-2023" data-link="https://www.linkedin.com/cws/share?url=https%3A%2F%2Fwww.rogerebert.com%2Freviews%2Fbarber-movie-review-2023"><span class="swp_count swp_hide"><span class="iconFiller"><span class="spaceManWilly"><i class="sw swp_linkedin_icon"></i><span class="swp_share">Share</span></span></span></span></a></div><div class="nc_tweetContainer swp_share_button swp_pinterest" data-network="pinterest"><a rel="nofollow noreferrer noopener" class="nc_tweet swp_share_link noPop" href="https://pinterest.com/pin/create/button/?url=https%3A%2F%2Fwww.rogerebert.com%2Freviews%2Fbarber-movie-review-2023" onClick="event.preventDefault(); var e=document.createElement('script'); e.setAttribute('type','text/javascript'); e.setAttribute('charset','UTF-8'); e.setAttribute('src','//assets.pinterest.com/js/pinmarklet.js?r='+Math.random()*99999999); document.body.appendChild(e); " ><span class="swp_count swp_hide"><span class="iconFiller"><span class="spaceManWilly"><i class="sw swp_pinterest_icon"></i><span class="swp_share">Pin</span></span></span></span></a></div></div> <div class="p-6 sm:p-8 bg-primary-light my-10 sm:my-12 flex flex-col sm:flex-row items-start justify-start sm:items-center gap-4 sm:gap-6" id="author-bio"> <div class="rounded-full author-avatar w-[72px] h-[72px] overflow-hidden"> <img width="100" height="96" src="https://www.rogerebert.com/wp-content/uploads/2024/06/Sheila-OMalley-1.jpg" class="h-full w-full object-cover" alt="" loading="lazy" fetchpriority="low" decoding="async" /> </div> <div class="text-lg flex-1"> <h5 class="font-heading-serif text-2xl mb-1"><a href="https://www.rogerebert.com/contributors/sheila-omalley">Sheila O'Malley</a></h5> <p>Sheila O&#8217;Malley received a BFA in Theatre from the University of Rhode Island and a Master&#8217;s in Acting from the Actors Studio MFA Program. Read her answers to our Movie Love Questionnaire <a href="http://www.rogerebert.com/balder-and-dash/meet-the-writers-sheila-omalley">here</a>.</p> </div> </div> </div> </div> </section> <div class="m-auto max-w-[1440px] px-2 pb-8 sm:pb-16 sm:px-2 flex flex-col justify-center md:grid md:grid-cols-12" id="content-lower"> <div class="col-start-1 col-end-13"> <div class="flex justify-center flex-wrap items-center"> <div class="flex flex-col items-start credit-col"> <h4 class="page-title mb-3 text-3xl sm:text-4xl font-heading-serif mt-0">Barber</h4> <a href="https://www.rogerebert.com/genre/crime" class="px-2 sm:px-3 mb-4 text-xs montserrat-700 py-[4px] sm:py-2 border border-primary-gold rounded text-primary-gold sm:text-[13px] uppercase transition-colors hover:bg-primary-gold hover:text-white">Crime</a><div class="flex justify-start items-center mr-3 sm:mr-4"> <div class="star-box"> <img src="https://www.rogerebert.com/wp-content/themes/roger-ebert/source/images/stars-fill.svg" alt="star rating" class="h-7 filled star30"> <img height="28" width="139" src="https://www.rogerebert.com/wp-content/themes/roger-ebert/source/images/stars.svg" alt="star rating" class="h-7"> </div> </div> <div class="mt-4 text-label-grey font-heading-sans text-sm"> 90 minutes <span class="mx-2"> ‧ </span>2023 </div> </div> <div class="credit-col"> <div class="mt-2 sm:mt-0 mb-2 shadow-black shadow-sm sm:mb-3"><img width="512" height="755" src="https://www.rogerebert.com/wp-content/uploads/2024/08/Barber-jpeg.webp" class="attachment-medium size-medium not-transparent wp-post-image" alt="" loading="lazy" decoding="async" data-has-transparency="false" data-dominant-color="543848" style="--dominant-color: #543848;" /></div> </div> <div class="credit-col"> <h4 class="text-2xl mb-1 font-heading-serif">Cast</h4> <ul> <li class="font-heading-sans mb-2 sm:my-2 text-sm"> <a href="https://www.rogerebert.com/cast-and-crew/aidan-gillen" class="underline">Aidan Gillen</a> <span>as Val Barber</span> </li> <li class="font-heading-sans mb-2 sm:my-2 text-sm"> <a href="https://www.rogerebert.com/cast-and-crew/steve-wall" class="underline">Steve Wall</a> <span>as Eddie Quinn</span> </li> <li class="font-heading-sans mb-2 sm:my-2 text-sm"> <a href="https://www.rogerebert.com/cast-and-crew/desmond-eastwood" class="underline">Desmond Eastwood</a> <span>as Cian Kelly</span> </li> <li class="font-heading-sans mb-2 sm:my-2 text-sm"> <a href="https://www.rogerebert.com/cast-and-crew/liam-carney" class="underline">Liam Carney</a> <span>as Tony Quinn</span> </li> <li class="font-heading-sans mb-2 sm:my-2 text-sm"> <a href="https://www.rogerebert.com/cast-and-crew/ruaidhri-conroy" class="underline">Rúaidhrí Conroy</a> <span>as Luke Kenny</span> </li> <li class="font-heading-sans mb-2 sm:my-2 text-sm"> <a href="https://www.rogerebert.com/cast-and-crew/gary-lydon" class="underline">Gary Lydon</a> <span>as Johnny Mulligan</span> </li> <li class="font-heading-sans mb-2 sm:my-2 text-sm"> <a href="https://www.rogerebert.com/cast-and-crew/ailbhe-cowley" class="underline">Ailbhe Cowley</a> <span>as Amy</span> </li> <li class="font-heading-sans mb-2 sm:my-2 text-sm"> <a href="https://www.rogerebert.com/cast-and-crew/nick-dunning" class="underline">Nick Dunning</a> <span>as Eunan Brady</span> </li> </ul> </div> <div class="credit-col"> <ul> <li class="mb-2 sm:mb-4"> <h4 class="text-2xl mb-1 font-heading-serif">Director</h4> <ul> <li class="font-heading-sans my-2 text-sm"> <a href="https://www.rogerebert.com/cast-and-crew/fintan-connolly" class="underline">Fintan Connolly</a> </li> </ul> </li> <li class="mb-2 sm:mb-4"> <h4 class="text-2xl mb-1 font-heading-serif">Writer</h4> <ul> <li class="font-heading-sans my-2 text-sm"> <a href="https://www.rogerebert.com/cast-and-crew/fintan-connolly" class="underline">Fintan Connolly</a> </li> <li class="font-heading-sans my-2 text-sm"> <a href="https://www.rogerebert.com/cast-and-crew/fiona-bergin" class="underline">Fiona Bergin</a> </li> </ul> </li> <li class="mb-2 sm:mb-4"> <h4 class="text-2xl mb-1 font-heading-serif">Composer</h4> <ul> <li class="font-heading-sans my-2 text-sm"> <a href="https://www.rogerebert.com/cast-and-crew/forrest-gray" class="underline">Forrest Gray</a> </li> </ul> </li> <li class="mb-2 sm:mb-4"> <h4 class="text-2xl mb-1 font-heading-serif">Editor</h4> <ul> <li class="font-heading-sans my-2 text-sm"> <a href="https://www.rogerebert.com/cast-and-crew/nicolas-de-toth" class="underline">Nicolas De Toth</a> </li> </ul> </li> <li class="mb-2 sm:mb-4"> <h4 class="text-2xl mb-1 font-heading-serif">Cinematographer</h4> <ul> <li class="font-heading-sans my-2 text-sm"> <a href="https://www.rogerebert.com/cast-and-crew/owen-mcpolin" class="underline">Owen McPolin</a> </li> </ul> </li> </ul> </div> </div> </div> </div> <div class="border-t border-[#cccccc] border-solid pt-8 sm:pt-14 pb-0"> <div class="m-auto max-w-[1440px] px-6 sm:px-8 flex flex-col justify-center md:grid md:grid-cols-12"> <div class="col-start-1 col-end-13 lg:col-start-3 lg:col-end-11""> <h4 class="text-2xl mb-8 md:text-3xl w-full text-center font-heading-serif" id="comments-header">Leave a comment</h4> <div id="disqus_thread" class="mb-8"></div> <script> var DISQUS_TITLE = "Barber"; var DISQUS_URL = "https://www.rogerebert.com/reviews/barber-movie-review-2023"; var DISQUS_IDENTIFIER = "/reviews/barber-movie-review-2023"; var DISQUS_DISABLE_ADS = false; </script> <noscript> Please enable JavaScript to view the <a href="https://disqus.com/?ref_noscript" rel="nofollow"> comments powered by Disqus. </a> </noscript> </div> </div> <div class="max-w-[1440px] ml-auto mr-auto relative flex flex-col px-6 xs:px-4"> <hr class="wp-block-separator single-template has-alpha-channel-opacity is-style-default"> <h4 class="text-2xl md:text-3xl w-full text-center font-heading-serif">Now playing</h4> <div class="w-auto pt-4 pb-2 sm:py-6 flex-1 grid-cols-1 grid xs:grid-cols-2 sm:grid-cols-3 lg:grid-cols-4"> <article class="review-small-card now-playing-random px-0 py-4 xs:px-2 sm:p-4 hidden"> <a href="https://www.rogerebert.com/reviews/last-breath-movie-review-2025" class="image-hover cursor-pointer relative rounded flex flex-col justify-end"> <div class="w-full aspect-9/14 overflow-hidden"> <img width="256" height="379" src="https://www.rogerebert.com/wp-content/uploads/2025/02/MV5BYmNjMDg1Y2EtNmZiOS00NGUzLThjZGYtNzU2OGI5M2VkMDFhXkEyXkFqcGc@._V1_FMjpg_UX1000_-256x379.jpg" class="w-full feature-image object-cover aspect-9/14 not-transparent wp-post-image" alt="Last Breath" loading="lazy" decoding="async" srcset="https://www.rogerebert.com/wp-content/uploads/2025/02/MV5BYmNjMDg1Y2EtNmZiOS00NGUzLThjZGYtNzU2OGI5M2VkMDFhXkEyXkFqcGc@._V1_FMjpg_UX1000_-256x379.jpg 256w, https://www.rogerebert.com/wp-content/uploads/2025/02/MV5BYmNjMDg1Y2EtNmZiOS00NGUzLThjZGYtNzU2OGI5M2VkMDFhXkEyXkFqcGc@._V1_FMjpg_UX1000_-768x1137-jpg.webp 768w, https://www.rogerebert.com/wp-content/uploads/2025/02/MV5BYmNjMDg1Y2EtNmZiOS00NGUzLThjZGYtNzU2OGI5M2VkMDFhXkEyXkFqcGc@._V1_FMjpg_UX1000_-190x281.jpg 190w, https://www.rogerebert.com/wp-content/uploads/2025/02/MV5BYmNjMDg1Y2EtNmZiOS00NGUzLThjZGYtNzU2OGI5M2VkMDFhXkEyXkFqcGc@._V1_FMjpg_UX1000_-122x180.jpg 122w, https://www.rogerebert.com/wp-content/uploads/2025/02/MV5BYmNjMDg1Y2EtNmZiOS00NGUzLThjZGYtNzU2OGI5M2VkMDFhXkEyXkFqcGc@._V1_FMjpg_UX1000_-320x474.jpg 320w, https://www.rogerebert.com/wp-content/uploads/2025/02/MV5BYmNjMDg1Y2EtNmZiOS00NGUzLThjZGYtNzU2OGI5M2VkMDFhXkEyXkFqcGc@._V1_FMjpg_UX1000_-jpg.webp 1000w" sizes="auto, (max-width: 256px) 100vw, 256px" data-has-transparency="false" data-dominant-color="102a2e" style="--dominant-color: #102a2e;" /> </div> <h3 class="text-2xl z-10 mt-4 inline"> <span>Last Breath</span> </h3> <div class="montserrat-500 mt-2 text-meta-grey text-sm"> Simon Abrams </div> <div class="w-full flex justify-start items-center mt-3"> <div class="star-box"> <img src="https://www.rogerebert.com/wp-content/themes/roger-ebert/source/images/stars-fill.svg" alt="star rating" class="h-5 filled star25"> <img width="99" height="20" src="https://www.rogerebert.com/wp-content/themes/roger-ebert/source/images/stars.svg" alt="star rating" class="h-5"> </div> </div> </a> </article> <article class="review-small-card now-playing-random px-0 py-4 xs:px-2 sm:p-4 hidden"> <a href="https://www.rogerebert.com/reviews/art-spiegelman-disaster-is-my-muse-documentary-film-review-2025" class="image-hover cursor-pointer relative rounded flex flex-col justify-end"> <div class="w-full aspect-9/14 overflow-hidden"> <img width="256" height="379" src="https://www.rogerebert.com/wp-content/uploads/2025/02/MV5BMDQ3ZDNjZDktNTJlZi00YWRhLWE4YmUtNTljZGU4ZWI0ZDVhXkEyXkFqcGc@._V1_FMjpg_UX1000_-256x379.jpg" class="w-full feature-image object-cover aspect-9/14 not-transparent wp-post-image" alt="Art Spiegelman: Disaster Is My Muse" loading="lazy" decoding="async" srcset="https://www.rogerebert.com/wp-content/uploads/2025/02/MV5BMDQ3ZDNjZDktNTJlZi00YWRhLWE4YmUtNTljZGU4ZWI0ZDVhXkEyXkFqcGc@._V1_FMjpg_UX1000_-256x379.jpg 256w, https://www.rogerebert.com/wp-content/uploads/2025/02/MV5BMDQ3ZDNjZDktNTJlZi00YWRhLWE4YmUtNTljZGU4ZWI0ZDVhXkEyXkFqcGc@._V1_FMjpg_UX1000_-768x1137-jpg.webp 768w, https://www.rogerebert.com/wp-content/uploads/2025/02/MV5BMDQ3ZDNjZDktNTJlZi00YWRhLWE4YmUtNTljZGU4ZWI0ZDVhXkEyXkFqcGc@._V1_FMjpg_UX1000_-190x281.jpg 190w, https://www.rogerebert.com/wp-content/uploads/2025/02/MV5BMDQ3ZDNjZDktNTJlZi00YWRhLWE4YmUtNTljZGU4ZWI0ZDVhXkEyXkFqcGc@._V1_FMjpg_UX1000_-122x180.jpg 122w, https://www.rogerebert.com/wp-content/uploads/2025/02/MV5BMDQ3ZDNjZDktNTJlZi00YWRhLWE4YmUtNTljZGU4ZWI0ZDVhXkEyXkFqcGc@._V1_FMjpg_UX1000_-320x474.jpg 320w, https://www.rogerebert.com/wp-content/uploads/2025/02/MV5BMDQ3ZDNjZDktNTJlZi00YWRhLWE4YmUtNTljZGU4ZWI0ZDVhXkEyXkFqcGc@._V1_FMjpg_UX1000_-jpg.webp 1000w" sizes="auto, (max-width: 256px) 100vw, 256px" data-has-transparency="false" data-dominant-color="68665f" style="--dominant-color: #68665f;" /> </div> <h3 class="text-2xl z-10 mt-4 inline"> <span>Art Spiegelman: Disaster Is My Muse</span> </h3> <div class="montserrat-500 mt-2 text-meta-grey text-sm"> Glenn Kenny </div> <div class="w-full flex justify-start items-center mt-3"> <div class="star-box"> <img src="https://www.rogerebert.com/wp-content/themes/roger-ebert/source/images/stars-fill.svg" alt="star rating" class="h-5 filled star40"> <img width="99" height="20" src="https://www.rogerebert.com/wp-content/themes/roger-ebert/source/images/stars.svg" alt="star rating" class="h-5"> </div> </div> </a> </article> <article class="review-small-card now-playing-random px-0 py-4 xs:px-2 sm:p-4 hidden"> <a href="https://www.rogerebert.com/reviews/the-monkey-movie-review" class="image-hover cursor-pointer relative rounded flex flex-col justify-end"> <div class="w-full aspect-9/14 overflow-hidden"> <img width="256" height="379" src="https://www.rogerebert.com/wp-content/uploads/2025/01/monkey-256x379.jpg" class="w-full feature-image object-cover aspect-9/14 not-transparent wp-post-image" alt="The Monkey" loading="lazy" decoding="async" srcset="https://www.rogerebert.com/wp-content/uploads/2025/01/monkey-256x379.jpg 256w, https://www.rogerebert.com/wp-content/uploads/2025/01/monkey-190x281.jpg 190w, https://www.rogerebert.com/wp-content/uploads/2025/01/monkey-122x180.jpg 122w, https://www.rogerebert.com/wp-content/uploads/2025/01/monkey-320x474.jpg 320w, https://www.rogerebert.com/wp-content/uploads/2025/01/monkey-jpg.webp 510w" sizes="auto, (max-width: 256px) 100vw, 256px" data-has-transparency="false" data-dominant-color="240f0f" style="--dominant-color: #240f0f;" /> </div> <h3 class="text-2xl z-10 mt-4 inline"> <span>The Monkey</span> </h3> <div class="montserrat-500 mt-2 text-meta-grey text-sm"> Brian Tallerico </div> <div class="w-full flex justify-start items-center mt-3"> <div class="star-box"> <img src="https://www.rogerebert.com/wp-content/themes/roger-ebert/source/images/stars-fill.svg" alt="star rating" class="h-5 filled star30"> <img width="99" height="20" src="https://www.rogerebert.com/wp-content/themes/roger-ebert/source/images/stars.svg" alt="star rating" class="h-5"> </div> </div> </a> </article> <article class="review-small-card now-playing-random px-0 py-4 xs:px-2 sm:p-4 hidden"> <a href="https://www.rogerebert.com/reviews/millers-in-marriage-film-review-2025" class="image-hover cursor-pointer relative rounded flex flex-col justify-end"> <div class="w-full aspect-9/14 overflow-hidden"> <img width="256" height="379" src="https://www.rogerebert.com/wp-content/uploads/2025/02/MV5BNWViZGY3OTMtZjU5Ny00YTFkLTljYjYtYTI3NDY4YzI4NWVlXkEyXkFqcGc@._V1_-256x379.jpg" class="w-full feature-image object-cover aspect-9/14 not-transparent wp-post-image" alt="Millers in Marriage" loading="lazy" decoding="async" srcset="https://www.rogerebert.com/wp-content/uploads/2025/02/MV5BNWViZGY3OTMtZjU5Ny00YTFkLTljYjYtYTI3NDY4YzI4NWVlXkEyXkFqcGc@._V1_-256x379.jpg 256w, https://www.rogerebert.com/wp-content/uploads/2025/02/MV5BNWViZGY3OTMtZjU5Ny00YTFkLTljYjYtYTI3NDY4YzI4NWVlXkEyXkFqcGc@._V1_-768x1138-jpg.webp 768w, https://www.rogerebert.com/wp-content/uploads/2025/02/MV5BNWViZGY3OTMtZjU5Ny00YTFkLTljYjYtYTI3NDY4YzI4NWVlXkEyXkFqcGc@._V1_-1037x1536.jpg 1037w, https://www.rogerebert.com/wp-content/uploads/2025/02/MV5BNWViZGY3OTMtZjU5Ny00YTFkLTljYjYtYTI3NDY4YzI4NWVlXkEyXkFqcGc@._V1_-1382x2048.jpg 1382w, https://www.rogerebert.com/wp-content/uploads/2025/02/MV5BNWViZGY3OTMtZjU5Ny00YTFkLTljYjYtYTI3NDY4YzI4NWVlXkEyXkFqcGc@._V1_-190x281.jpg 190w, https://www.rogerebert.com/wp-content/uploads/2025/02/MV5BNWViZGY3OTMtZjU5Ny00YTFkLTljYjYtYTI3NDY4YzI4NWVlXkEyXkFqcGc@._V1_-122x180.jpg 122w, https://www.rogerebert.com/wp-content/uploads/2025/02/MV5BNWViZGY3OTMtZjU5Ny00YTFkLTljYjYtYTI3NDY4YzI4NWVlXkEyXkFqcGc@._V1_-320x474.jpg 320w, https://www.rogerebert.com/wp-content/uploads/2025/02/MV5BNWViZGY3OTMtZjU5Ny00YTFkLTljYjYtYTI3NDY4YzI4NWVlXkEyXkFqcGc@._V1_-scaled-jpg.webp 1728w" sizes="auto, (max-width: 256px) 100vw, 256px" data-has-transparency="false" data-dominant-color="6b574d" style="--dominant-color: #6b574d;" /> </div> <h3 class="text-2xl z-10 mt-4 inline"> <span>Millers in Marriage</span> </h3> <div class="montserrat-500 mt-2 text-meta-grey text-sm"> Matt Zoller Seitz </div> <div class="w-full flex justify-start items-center mt-3"> <div class="star-box"> <img src="https://www.rogerebert.com/wp-content/themes/roger-ebert/source/images/stars-fill.svg" alt="star rating" class="h-5 filled star15"> <img width="99" height="20" src="https://www.rogerebert.com/wp-content/themes/roger-ebert/source/images/stars.svg" alt="star rating" class="h-5"> </div> </div> </a> </article> <article class="review-small-card now-playing-random px-0 py-4 xs:px-2 sm:p-4 hidden"> <a href="https://www.rogerebert.com/reviews/the-quiet-ones-film-review-2025" class="image-hover cursor-pointer relative rounded flex flex-col justify-end"> <div class="w-full aspect-9/14 overflow-hidden"> <img width="256" height="365" src="https://www.rogerebert.com/wp-content/uploads/2025/02/MV5BYjNlM2I2ZjAtNjg0OS00MTVkLTgzMzAtNTM3Yzc0OThiYjUxXkEyXkFqcGc@._V1_FMjpg_UX1000_-256x365.jpg" class="w-full feature-image object-cover aspect-9/14 not-transparent wp-post-image" alt="The Quiet Ones (2025)" loading="lazy" decoding="async" srcset="https://www.rogerebert.com/wp-content/uploads/2025/02/MV5BYjNlM2I2ZjAtNjg0OS00MTVkLTgzMzAtNTM3Yzc0OThiYjUxXkEyXkFqcGc@._V1_FMjpg_UX1000_-256x365.jpg 256w, https://www.rogerebert.com/wp-content/uploads/2025/02/MV5BYjNlM2I2ZjAtNjg0OS00MTVkLTgzMzAtNTM3Yzc0OThiYjUxXkEyXkFqcGc@._V1_FMjpg_UX1000_-768x1094-jpg.webp 768w, https://www.rogerebert.com/wp-content/uploads/2025/02/MV5BYjNlM2I2ZjAtNjg0OS00MTVkLTgzMzAtNTM3Yzc0OThiYjUxXkEyXkFqcGc@._V1_FMjpg_UX1000_-197x281.jpg 197w, https://www.rogerebert.com/wp-content/uploads/2025/02/MV5BYjNlM2I2ZjAtNjg0OS00MTVkLTgzMzAtNTM3Yzc0OThiYjUxXkEyXkFqcGc@._V1_FMjpg_UX1000_-126x180.jpg 126w, https://www.rogerebert.com/wp-content/uploads/2025/02/MV5BYjNlM2I2ZjAtNjg0OS00MTVkLTgzMzAtNTM3Yzc0OThiYjUxXkEyXkFqcGc@._V1_FMjpg_UX1000_-324x462.jpg 324w, https://www.rogerebert.com/wp-content/uploads/2025/02/MV5BYjNlM2I2ZjAtNjg0OS00MTVkLTgzMzAtNTM3Yzc0OThiYjUxXkEyXkFqcGc@._V1_FMjpg_UX1000_-jpg.webp 1000w" sizes="auto, (max-width: 256px) 100vw, 256px" data-has-transparency="false" data-dominant-color="aea78f" style="--dominant-color: #aea78f;" /> </div> <h3 class="text-2xl z-10 mt-4 inline"> <span>The Quiet Ones (2025)</span> </h3> <div class="montserrat-500 mt-2 text-meta-grey text-sm"> Matt Zoller Seitz </div> <div class="w-full flex justify-start items-center mt-3"> <div class="star-box"> <img src="https://www.rogerebert.com/wp-content/themes/roger-ebert/source/images/stars-fill.svg" alt="star rating" class="h-5 filled star30"> <img width="99" height="20" src="https://www.rogerebert.com/wp-content/themes/roger-ebert/source/images/stars.svg" alt="star rating" class="h-5"> </div> </div> </a> </article> <article class="review-small-card now-playing-random px-0 py-4 xs:px-2 sm:p-4 hidden"> <a href="https://www.rogerebert.com/reviews/legends-of-the-condor-heroes-the-gallants" class="image-hover cursor-pointer relative rounded flex flex-col justify-end"> <div class="w-full aspect-9/14 overflow-hidden"> <img width="256" height="384" src="https://www.rogerebert.com/wp-content/uploads/2025/02/j7a1A5iiIP9no43YjWdBHLJFEQB-256x384.jpg" class="w-full feature-image object-cover aspect-9/14 not-transparent wp-post-image" alt="Legends of the Condor Heroes: The Gallants" loading="lazy" decoding="async" srcset="https://www.rogerebert.com/wp-content/uploads/2025/02/j7a1A5iiIP9no43YjWdBHLJFEQB-256x384.jpg 256w, https://www.rogerebert.com/wp-content/uploads/2025/02/j7a1A5iiIP9no43YjWdBHLJFEQB-768x1152-jpg.webp 768w, https://www.rogerebert.com/wp-content/uploads/2025/02/j7a1A5iiIP9no43YjWdBHLJFEQB-1024x1536.jpg 1024w, https://www.rogerebert.com/wp-content/uploads/2025/02/j7a1A5iiIP9no43YjWdBHLJFEQB-187x281.jpg 187w, https://www.rogerebert.com/wp-content/uploads/2025/02/j7a1A5iiIP9no43YjWdBHLJFEQB-120x180.jpg 120w, https://www.rogerebert.com/wp-content/uploads/2025/02/j7a1A5iiIP9no43YjWdBHLJFEQB-316x474.jpg 316w, https://www.rogerebert.com/wp-content/uploads/2025/02/j7a1A5iiIP9no43YjWdBHLJFEQB-jpg.webp 1280w" sizes="auto, (max-width: 256px) 100vw, 256px" data-has-transparency="false" data-dominant-color="562013" style="--dominant-color: #562013;" /> </div> <h3 class="text-2xl z-10 mt-4 inline"> <span>Legends of the Condor Heroes: The Gallants</span> </h3> <div class="montserrat-500 mt-2 text-meta-grey text-sm"> Simon Abrams </div> <div class="w-full flex justify-start items-center mt-3"> <div class="star-box"> <img src="https://www.rogerebert.com/wp-content/themes/roger-ebert/source/images/stars-fill.svg" alt="star rating" class="h-5 filled star25"> <img width="99" height="20" src="https://www.rogerebert.com/wp-content/themes/roger-ebert/source/images/stars.svg" alt="star rating" class="h-5"> </div> </div> </a> </article> <article class="review-small-card now-playing-random px-0 py-4 xs:px-2 sm:p-4 hidden"> <a href="https://www.rogerebert.com/reviews/compensation-film-review-1999" class="image-hover cursor-pointer relative rounded flex flex-col justify-end"> <div class="w-full aspect-9/14 overflow-hidden"> <img width="256" height="341" src="https://www.rogerebert.com/wp-content/uploads/2025/02/MV5BNDU4YmIzZDEtMjZlMi00OTM5LWE3Y2YtYzcwM2RjM2FlZDIzXkEyXkFqcGc@._V1_FMjpg_UX1000_-256x341.jpg" class="w-full feature-image object-cover aspect-9/14 not-transparent wp-post-image" alt="Compensation" loading="lazy" decoding="async" srcset="https://www.rogerebert.com/wp-content/uploads/2025/02/MV5BNDU4YmIzZDEtMjZlMi00OTM5LWE3Y2YtYzcwM2RjM2FlZDIzXkEyXkFqcGc@._V1_FMjpg_UX1000_-256x341.jpg 256w, https://www.rogerebert.com/wp-content/uploads/2025/02/MV5BNDU4YmIzZDEtMjZlMi00OTM5LWE3Y2YtYzcwM2RjM2FlZDIzXkEyXkFqcGc@._V1_FMjpg_UX1000_-768x1024-jpg.webp 768w, https://www.rogerebert.com/wp-content/uploads/2025/02/MV5BNDU4YmIzZDEtMjZlMi00OTM5LWE3Y2YtYzcwM2RjM2FlZDIzXkEyXkFqcGc@._V1_FMjpg_UX1000_-211x281.jpg 211w, https://www.rogerebert.com/wp-content/uploads/2025/02/MV5BNDU4YmIzZDEtMjZlMi00OTM5LWE3Y2YtYzcwM2RjM2FlZDIzXkEyXkFqcGc@._V1_FMjpg_UX1000_-135x180.jpg 135w, https://www.rogerebert.com/wp-content/uploads/2025/02/MV5BNDU4YmIzZDEtMjZlMi00OTM5LWE3Y2YtYzcwM2RjM2FlZDIzXkEyXkFqcGc@._V1_FMjpg_UX1000_-324x432.jpg 324w, https://www.rogerebert.com/wp-content/uploads/2025/02/MV5BNDU4YmIzZDEtMjZlMi00OTM5LWE3Y2YtYzcwM2RjM2FlZDIzXkEyXkFqcGc@._V1_FMjpg_UX1000_-jpg.webp 1000w" sizes="auto, (max-width: 256px) 100vw, 256px" data-has-transparency="false" data-dominant-color="918678" style="--dominant-color: #918678;" /> </div> <h3 class="text-2xl z-10 mt-4 inline"> <span>Compensation</span> </h3> <div class="montserrat-500 mt-2 text-meta-grey text-sm"> Robert Daniels </div> <div class="w-full flex justify-start items-center mt-3"> <div class="star-box"> <img src="https://www.rogerebert.com/wp-content/themes/roger-ebert/source/images/stars-fill.svg" alt="star rating" class="h-5 filled star40"> <img width="99" height="20" src="https://www.rogerebert.com/wp-content/themes/roger-ebert/source/images/stars.svg" alt="star rating" class="h-5"> </div> </div> </a> </article> <article class="review-small-card now-playing-random px-0 py-4 xs:px-2 sm:p-4 hidden"> <a href="https://www.rogerebert.com/reviews/old-guy-movie-review-2025" class="image-hover cursor-pointer relative rounded flex flex-col justify-end"> <div class="w-full aspect-9/14 overflow-hidden"> <img width="256" height="384" src="https://www.rogerebert.com/wp-content/uploads/2025/02/MV5BOGM4NzRiNTAtNDQxNy00YjBmLTg3NjMtNDE4MjVlYzUyMmIwXkEyXkFqcGc@._V1_FMjpg_UX1000_-256x384.jpg" class="w-full feature-image object-cover aspect-9/14 not-transparent wp-post-image" alt="Old Guy" loading="lazy" decoding="async" srcset="https://www.rogerebert.com/wp-content/uploads/2025/02/MV5BOGM4NzRiNTAtNDQxNy00YjBmLTg3NjMtNDE4MjVlYzUyMmIwXkEyXkFqcGc@._V1_FMjpg_UX1000_-256x384.jpg 256w, https://www.rogerebert.com/wp-content/uploads/2025/02/MV5BOGM4NzRiNTAtNDQxNy00YjBmLTg3NjMtNDE4MjVlYzUyMmIwXkEyXkFqcGc@._V1_FMjpg_UX1000_-768x1152-jpg.webp 768w, https://www.rogerebert.com/wp-content/uploads/2025/02/MV5BOGM4NzRiNTAtNDQxNy00YjBmLTg3NjMtNDE4MjVlYzUyMmIwXkEyXkFqcGc@._V1_FMjpg_UX1000_-187x281.jpg 187w, https://www.rogerebert.com/wp-content/uploads/2025/02/MV5BOGM4NzRiNTAtNDQxNy00YjBmLTg3NjMtNDE4MjVlYzUyMmIwXkEyXkFqcGc@._V1_FMjpg_UX1000_-120x180.jpg 120w, https://www.rogerebert.com/wp-content/uploads/2025/02/MV5BOGM4NzRiNTAtNDQxNy00YjBmLTg3NjMtNDE4MjVlYzUyMmIwXkEyXkFqcGc@._V1_FMjpg_UX1000_-316x474.jpg 316w, https://www.rogerebert.com/wp-content/uploads/2025/02/MV5BOGM4NzRiNTAtNDQxNy00YjBmLTg3NjMtNDE4MjVlYzUyMmIwXkEyXkFqcGc@._V1_FMjpg_UX1000_-jpg.webp 1000w" sizes="auto, (max-width: 256px) 100vw, 256px" data-has-transparency="false" data-dominant-color="7b5836" style="--dominant-color: #7b5836;" /> </div> <h3 class="text-2xl z-10 mt-4 inline"> <span>Old Guy</span> </h3> <div class="montserrat-500 mt-2 text-meta-grey text-sm"> Clint Worthington </div> <div class="w-full flex justify-start items-center mt-3"> <div class="star-box"> <img src="https://www.rogerebert.com/wp-content/themes/roger-ebert/source/images/stars-fill.svg" alt="star rating" class="h-5 filled star15"> <img width="99" height="20" src="https://www.rogerebert.com/wp-content/themes/roger-ebert/source/images/stars.svg" alt="star rating" class="h-5"> </div> </div> </a> </article> <article class="review-small-card now-playing-random px-0 py-4 xs:px-2 sm:p-4 hidden"> <a href="https://www.rogerebert.com/reviews/ex-husbands-movie-review-2025" class="image-hover cursor-pointer relative rounded flex flex-col justify-end"> <div class="w-full aspect-9/14 overflow-hidden"> <img width="256" height="377" src="https://www.rogerebert.com/wp-content/uploads/2025/02/unnamed-11-256x377.jpg" class="w-full feature-image object-cover aspect-9/14 not-transparent wp-post-image" alt="Ex-Husbands" loading="lazy" decoding="async" srcset="https://www.rogerebert.com/wp-content/uploads/2025/02/unnamed-11-256x377.jpg 256w, https://www.rogerebert.com/wp-content/uploads/2025/02/unnamed-11-768x1131-jpg.webp 768w, https://www.rogerebert.com/wp-content/uploads/2025/02/unnamed-11-1043x1536.jpg 1043w, https://www.rogerebert.com/wp-content/uploads/2025/02/unnamed-11-191x281.jpg 191w, https://www.rogerebert.com/wp-content/uploads/2025/02/unnamed-11-122x180.jpg 122w, https://www.rogerebert.com/wp-content/uploads/2025/02/unnamed-11-322x474.jpg 322w, https://www.rogerebert.com/wp-content/uploads/2025/02/unnamed-11-jpg.webp 1200w" sizes="auto, (max-width: 256px) 100vw, 256px" data-has-transparency="false" data-dominant-color="252219" style="--dominant-color: #252219;" /> </div> <h3 class="text-2xl z-10 mt-4 inline"> <span>Ex-Husbands</span> </h3> <div class="montserrat-500 mt-2 text-meta-grey text-sm"> Tomris Laffly </div> <div class="w-full flex justify-start items-center mt-3"> <div class="star-box"> <img src="https://www.rogerebert.com/wp-content/themes/roger-ebert/source/images/stars-fill.svg" alt="star rating" class="h-5 filled star30"> <img width="99" height="20" src="https://www.rogerebert.com/wp-content/themes/roger-ebert/source/images/stars.svg" alt="star rating" class="h-5"> </div> </div> </a> </article> <article class="review-small-card now-playing-random px-0 py-4 xs:px-2 sm:p-4 hidden"> <a href="https://www.rogerebert.com/reviews/cleaner" class="image-hover cursor-pointer relative rounded flex flex-col justify-end"> <div class="w-full aspect-9/14 overflow-hidden"> <img width="256" height="376" src="https://www.rogerebert.com/wp-content/uploads/2025/02/MV5BMmE1MzkyMDctZjgzNC00YzkxLWI1YTctY2E4YzNjNmI1YTljXkEyXkFqcGc@._V1_FMjpg_UX1000_-256x376.jpg" class="w-full feature-image object-cover aspect-9/14 not-transparent wp-post-image" alt="Cleaner" loading="lazy" decoding="async" srcset="https://www.rogerebert.com/wp-content/uploads/2025/02/MV5BMmE1MzkyMDctZjgzNC00YzkxLWI1YTctY2E4YzNjNmI1YTljXkEyXkFqcGc@._V1_FMjpg_UX1000_-256x376.jpg 256w, https://www.rogerebert.com/wp-content/uploads/2025/02/MV5BMmE1MzkyMDctZjgzNC00YzkxLWI1YTctY2E4YzNjNmI1YTljXkEyXkFqcGc@._V1_FMjpg_UX1000_-768x1127-jpg.webp 768w, https://www.rogerebert.com/wp-content/uploads/2025/02/MV5BMmE1MzkyMDctZjgzNC00YzkxLWI1YTctY2E4YzNjNmI1YTljXkEyXkFqcGc@._V1_FMjpg_UX1000_-192x281.jpg 192w, https://www.rogerebert.com/wp-content/uploads/2025/02/MV5BMmE1MzkyMDctZjgzNC00YzkxLWI1YTctY2E4YzNjNmI1YTljXkEyXkFqcGc@._V1_FMjpg_UX1000_-123x180.jpg 123w, https://www.rogerebert.com/wp-content/uploads/2025/02/MV5BMmE1MzkyMDctZjgzNC00YzkxLWI1YTctY2E4YzNjNmI1YTljXkEyXkFqcGc@._V1_FMjpg_UX1000_-324x474.jpg 324w, https://www.rogerebert.com/wp-content/uploads/2025/02/MV5BMmE1MzkyMDctZjgzNC00YzkxLWI1YTctY2E4YzNjNmI1YTljXkEyXkFqcGc@._V1_FMjpg_UX1000_.jpg 1000w" sizes="auto, (max-width: 256px) 100vw, 256px" data-has-transparency="false" data-dominant-color="625a5e" style="--dominant-color: #625a5e;" /> </div> <h3 class="text-2xl z-10 mt-4 inline"> <span>Cleaner</span> </h3> <div class="montserrat-500 mt-2 text-meta-grey text-sm"> Monica Castillo </div> <div class="w-full flex justify-start items-center mt-3"> <div class="star-box"> <img src="https://www.rogerebert.com/wp-content/themes/roger-ebert/source/images/stars-fill.svg" alt="star rating" class="h-5 filled star25"> <img width="99" height="20" src="https://www.rogerebert.com/wp-content/themes/roger-ebert/source/images/stars.svg" alt="star rating" class="h-5"> </div> </div> </a> </article> <article class="review-small-card now-playing-random px-0 py-4 xs:px-2 sm:p-4 hidden"> <a href="https://www.rogerebert.com/reviews/the-unbreakable-boy-movie-review-2025" class="image-hover cursor-pointer relative rounded flex flex-col justify-end"> <div class="w-full aspect-9/14 overflow-hidden"> <img width="256" height="379" src="https://www.rogerebert.com/wp-content/uploads/2025/02/The-Unbreakable-Boy-Key-Art-256x379.jpg" class="w-full feature-image object-cover aspect-9/14 not-transparent wp-post-image" alt="The Unbreakable Boy" loading="lazy" decoding="async" srcset="https://www.rogerebert.com/wp-content/uploads/2025/02/The-Unbreakable-Boy-Key-Art-256x379.jpg 256w, https://www.rogerebert.com/wp-content/uploads/2025/02/The-Unbreakable-Boy-Key-Art-768x1138-jpg.webp 768w, https://www.rogerebert.com/wp-content/uploads/2025/02/The-Unbreakable-Boy-Key-Art-1037x1536.jpg 1037w, https://www.rogerebert.com/wp-content/uploads/2025/02/The-Unbreakable-Boy-Key-Art-1382x2048.jpg 1382w, https://www.rogerebert.com/wp-content/uploads/2025/02/The-Unbreakable-Boy-Key-Art-190x281.jpg 190w, https://www.rogerebert.com/wp-content/uploads/2025/02/The-Unbreakable-Boy-Key-Art-122x180.jpg 122w, https://www.rogerebert.com/wp-content/uploads/2025/02/The-Unbreakable-Boy-Key-Art-320x474.jpg 320w, https://www.rogerebert.com/wp-content/uploads/2025/02/The-Unbreakable-Boy-Key-Art-scaled-jpg.webp 1728w" sizes="auto, (max-width: 256px) 100vw, 256px" data-has-transparency="false" data-dominant-color="a7a59d" style="--dominant-color: #a7a59d;" /> </div> <h3 class="text-2xl z-10 mt-4 inline"> <span>The Unbreakable Boy</span> </h3> <div class="montserrat-500 mt-2 text-meta-grey text-sm"> Nell Minow </div> <div class="w-full flex justify-start items-center mt-3"> <div class="star-box"> <img src="https://www.rogerebert.com/wp-content/themes/roger-ebert/source/images/stars-fill.svg" alt="star rating" class="h-5 filled star30"> <img width="99" height="20" src="https://www.rogerebert.com/wp-content/themes/roger-ebert/source/images/stars.svg" alt="star rating" class="h-5"> </div> </div> </a> </article> <article class="review-small-card now-playing-random px-0 py-4 xs:px-2 sm:p-4 hidden"> <a href="https://www.rogerebert.com/reviews/invader-movie-review-2025" class="image-hover cursor-pointer relative rounded flex flex-col justify-end"> <div class="w-full aspect-9/14 overflow-hidden"> <img width="256" height="379" src="https://www.rogerebert.com/wp-content/uploads/2025/02/MV5BMzNmMDY3YmUtOTU2Ny00ZjMyLWEyYWUtMTllMWY5ZmQ1ZjE1XkEyXkFqcGc@._V1_-256x379.jpg" class="w-full feature-image object-cover aspect-9/14 not-transparent wp-post-image" alt="Invader" loading="lazy" decoding="async" srcset="https://www.rogerebert.com/wp-content/uploads/2025/02/MV5BMzNmMDY3YmUtOTU2Ny00ZjMyLWEyYWUtMTllMWY5ZmQ1ZjE1XkEyXkFqcGc@._V1_-256x379.jpg 256w, https://www.rogerebert.com/wp-content/uploads/2025/02/MV5BMzNmMDY3YmUtOTU2Ny00ZjMyLWEyYWUtMTllMWY5ZmQ1ZjE1XkEyXkFqcGc@._V1_-190x281.jpg 190w, https://www.rogerebert.com/wp-content/uploads/2025/02/MV5BMzNmMDY3YmUtOTU2Ny00ZjMyLWEyYWUtMTllMWY5ZmQ1ZjE1XkEyXkFqcGc@._V1_-121x180.jpg 121w, https://www.rogerebert.com/wp-content/uploads/2025/02/MV5BMzNmMDY3YmUtOTU2Ny00ZjMyLWEyYWUtMTllMWY5ZmQ1ZjE1XkEyXkFqcGc@._V1_-320x474.jpg 320w, https://www.rogerebert.com/wp-content/uploads/2025/02/MV5BMzNmMDY3YmUtOTU2Ny00ZjMyLWEyYWUtMTllMWY5ZmQ1ZjE1XkEyXkFqcGc@._V1_-jpg.webp 768w" sizes="auto, (max-width: 256px) 100vw, 256px" data-has-transparency="false" data-dominant-color="584845" style="--dominant-color: #584845;" /> </div> <h3 class="text-2xl z-10 mt-4 inline"> <span>Invader</span> </h3> <div class="montserrat-500 mt-2 text-meta-grey text-sm"> Christy Lemire </div> <div class="w-full flex justify-start items-center mt-3"> <div class="star-box"> <img src="https://www.rogerebert.com/wp-content/themes/roger-ebert/source/images/stars-fill.svg" alt="star rating" class="h-5 filled star15"> <img width="99" height="20" src="https://www.rogerebert.com/wp-content/themes/roger-ebert/source/images/stars.svg" alt="star rating" class="h-5"> </div> </div> </a> </article> </div> </div> <div class="max-w-[1440px] px-6 pb-2 sm:pb-6 ml-auto mr-auto relative flex flex-col xs:px-4"> <hr class="wp-block-separator single-template has-alpha-channel-opacity is-style-default"> <h4 class="text-2xl mb-5 sm:mb-6 md:text-3xl w-full text-center font-heading-serif">Latest articles</h4> <div class="w-auto flex-1 grid-cols-1 grid sm:grid-cols-2 xl:grid-cols-4"> <article class="px-0 py-4 xs:px-2 sm:px-4"> <a href="https://www.rogerebert.com/features/a-salute-to-the-movies-that-got-overlooked-during-oscar-season" class="image-hover relative rounded flex flex-col justify-end"> <div class="w-full aspect-video overflow-hidden"> <img width="500" height="281" src="https://www.rogerebert.com/wp-content/uploads/2025/02/MixCollage-25-Feb-2025-10-13-AM-2094-500x281.jpg" class="w-full feature-image aspect-video object-cover not-transparent wp-post-image" alt="" loading="lazy" decoding="async" srcset="https://www.rogerebert.com/wp-content/uploads/2025/02/MixCollage-25-Feb-2025-10-13-AM-2094-500x281.jpg 500w, https://www.rogerebert.com/wp-content/uploads/2025/02/MixCollage-25-Feb-2025-10-13-AM-2094-768x432-jpg.webp 768w, https://www.rogerebert.com/wp-content/uploads/2025/02/MixCollage-25-Feb-2025-10-13-AM-2094-320x180.jpg 320w, https://www.rogerebert.com/wp-content/uploads/2025/02/MixCollage-25-Feb-2025-10-13-AM-2094-324x182.jpg 324w, https://www.rogerebert.com/wp-content/uploads/2025/02/MixCollage-25-Feb-2025-10-13-AM-2094-256x144.jpg 256w, https://www.rogerebert.com/wp-content/uploads/2025/02/MixCollage-25-Feb-2025-10-13-AM-2094-jpg.webp 1280w" sizes="auto, (max-width: 500px) 100vw, 500px" data-has-transparency="false" data-dominant-color="675e64" style="--dominant-color: #675e64;" /> </div> <div class="uppercase montserrat-700 text-primary-gold mt-4 text-sm"> Features </div> <h3 class="text-2xl xs:text-xl sm:text-2xl z-10 mt-2">A Salute to the Movies That Got Overlooked During Oscar Season</h3> <div class="text-meta-grey mt-2"> 20 hours ago </div> </a> </article> <article class="px-0 py-4 xs:px-2 sm:px-4"> <a href="https://www.rogerebert.com/far-flung-correspondents/the-puppet-master-was-right-ghost-in-the-shell-at-30" class="image-hover relative rounded flex flex-col justify-end"> <div class="w-full aspect-video overflow-hidden"> <img width="500" height="281" src="https://www.rogerebert.com/wp-content/uploads/2025/02/Ghost-in-the-Shell-1-500x281.jpeg" class="w-full feature-image aspect-video object-cover not-transparent wp-post-image" alt="Ghost in the Shell" loading="lazy" decoding="async" srcset="https://www.rogerebert.com/wp-content/uploads/2025/02/Ghost-in-the-Shell-1-500x281.jpeg 500w, https://www.rogerebert.com/wp-content/uploads/2025/02/Ghost-in-the-Shell-1-768x432-jpeg.webp 768w, https://www.rogerebert.com/wp-content/uploads/2025/02/Ghost-in-the-Shell-1-1536x864.jpeg 1536w, https://www.rogerebert.com/wp-content/uploads/2025/02/Ghost-in-the-Shell-1-320x180.jpeg 320w, https://www.rogerebert.com/wp-content/uploads/2025/02/Ghost-in-the-Shell-1-324x182.jpeg 324w, https://www.rogerebert.com/wp-content/uploads/2025/02/Ghost-in-the-Shell-1-256x144.jpeg 256w, https://www.rogerebert.com/wp-content/uploads/2025/02/Ghost-in-the-Shell-1-jpeg.webp 1920w" sizes="auto, (max-width: 500px) 100vw, 500px" data-has-transparency="false" data-dominant-color="21332a" style="--dominant-color: #21332a;" /> </div> <div class="uppercase montserrat-700 text-primary-gold mt-4 text-sm"> Far Flungers </div> <h3 class="text-2xl xs:text-xl sm:text-2xl z-10 mt-2">The Puppet Master Was Right: “Ghost in the Shell” at 30</h3> <div class="text-meta-grey mt-2"> 20 hours ago </div> </a> </article> <article class="px-0 py-4 xs:px-2 sm:px-4"> <a href="https://www.rogerebert.com/dvd-blu-ray/february-2025-blu-ray-guide-wicked-nosferatu-here-heretic-more" class="image-hover relative rounded flex flex-col justify-end"> <div class="w-full aspect-video overflow-hidden"> <img width="499" height="281" src="https://www.rogerebert.com/wp-content/uploads/2025/02/Real-Pain-Still-499x281.jpg" class="w-full feature-image aspect-video object-cover not-transparent wp-post-image" alt="A Real Pain" loading="lazy" decoding="async" srcset="https://www.rogerebert.com/wp-content/uploads/2025/02/Real-Pain-Still-499x281.jpg 499w, https://www.rogerebert.com/wp-content/uploads/2025/02/Real-Pain-Still-768x432-jpg.webp 768w, https://www.rogerebert.com/wp-content/uploads/2025/02/Real-Pain-Still-320x180.jpg 320w, https://www.rogerebert.com/wp-content/uploads/2025/02/Real-Pain-Still-324x182.jpg 324w, https://www.rogerebert.com/wp-content/uploads/2025/02/Real-Pain-Still-256x144.jpg 256w, https://www.rogerebert.com/wp-content/uploads/2025/02/Real-Pain-Still-jpg.webp 1500w" sizes="auto, (max-width: 499px) 100vw, 499px" data-has-transparency="false" data-dominant-color="907462" style="--dominant-color: #907462;" /> </div> <div class="uppercase montserrat-700 text-primary-gold mt-4 text-sm"> DVD/Blu-Ray </div> <h3 class="text-2xl xs:text-xl sm:text-2xl z-10 mt-2">February 2025 Blu-Ray Guide: &#8220;Wicked,&#8221; &#8220;Nosferatu,&#8221; &#8220;Here,&#8221; &#8220;Heretic,&#8221; More</h3> <div class="text-meta-grey mt-2"> 20 hours ago </div> </a> </article> <article class="px-0 py-4 xs:px-2 sm:px-4"> <a href="https://www.rogerebert.com/interviews/video-interview-edgar-berger-ralph-fiennes-on-conclave" class="image-hover relative rounded flex flex-col justify-end"> <div class="w-full aspect-video overflow-hidden"> <img width="500" height="281" src="https://www.rogerebert.com/wp-content/uploads/2025/02/Conclave-500x281.jpg" class="w-full feature-image aspect-video object-cover not-transparent wp-post-image" alt="Conclave" loading="lazy" decoding="async" srcset="https://www.rogerebert.com/wp-content/uploads/2025/02/Conclave-500x281.jpg 500w, https://www.rogerebert.com/wp-content/uploads/2025/02/Conclave-768x432-jpg.webp 768w, https://www.rogerebert.com/wp-content/uploads/2025/02/Conclave-1536x864.jpg 1536w, https://www.rogerebert.com/wp-content/uploads/2025/02/Conclave-320x180.jpg 320w, https://www.rogerebert.com/wp-content/uploads/2025/02/Conclave-324x182.jpg 324w, https://www.rogerebert.com/wp-content/uploads/2025/02/Conclave-256x144.jpg 256w, https://www.rogerebert.com/wp-content/uploads/2025/02/Conclave-jpg.webp 2048w" sizes="auto, (max-width: 500px) 100vw, 500px" data-has-transparency="false" data-dominant-color="524542" style="--dominant-color: #524542;" /> </div> <div class="uppercase montserrat-700 text-primary-gold mt-4 text-sm"> Interviews </div> <h3 class="text-2xl xs:text-xl sm:text-2xl z-10 mt-2">Video Interview: Edgar Berger, Ralph Fiennes on &#8220;Conclave&#8221;</h3> <div class="text-meta-grey mt-2"> 2 days ago </div> </a> </article> </div> </div> </div> </main> </div> </div> </div> <section id="subscribe" class="newsletter-subscribe bg-black mt-6 md:mt-12 py-12 lg:py-16 xl:py-20 w-full"> <div class="wrapper m-auto max-w-[1440px] px-8 text-center flex flex-col justify-center md:grid md:grid-cols-12"> <img width="80" height="86" class="mx-auto col-start-6 w-[80px] col-end-8 mb-5 lg:mb-6" loading="lazy" src="https://www.rogerebert.com/wp-content/themes/roger-ebert/source/images/thumb-up-subscribe.svg" alt="subscribe icon"> <h4 class="text-white text-3xl mb-6 lg:mb-7 col-start-2 col-end-12 lg:col-start-3 lg:col-end-11">The best movie reviews, in your inbox</h4> <form action="https://rogerebert.us6.list-manage.com/subscribe/post?u=53d28014f6494e01798442219&amp;amp;id=9ac9effdc7" class="mailing-list--form validate js--newsletter col-start-2 col-end-12 lg:col-start-3 lg:col-end-11" id="mc-embedded-subscribe-form" method="post" name="mc-embedded-subscribe-form" novalidate="" target="_blank"> <div class="mailing-list--input flex flex-col md:flex-row justify-center items-center"> <input class="py-3 px-6 w-full flex-auto mb-6 md:mb-auto md:mr-2.5 border border-primary-gold montserrat-500 montserrat-500 rounded-full text-white text-base md:text-lg bg-transparent required email" id="mce-EMAIL" name="EMAIL" placeholder="Enter your email" type="email" value=""> <input class="cursor-pointer py-3 px-6 border md:ml-2.5 border-primary-gold bg-primary-gold montserrat-700 uppercase text-base md:text-lg text-white rounded-full transition-colors hover:bg-secondary-bronze hover:border-secondary-bronze" id="mc-embedded-subscribe" name="subscribe" type="submit" value="Subscribe"> </div> <div id="mce-responses"> <div class="response" id="mce-error-response" style="display:none"></div> <div class="response" id="mce-success-response" style="display:none"></div> </div> </form> </div> </section> <footer id="site-footer" class="site-footer"> <div class="w-full max-w-[1440px] m-auto pt-6 pb-0 sm:pt-10 text-center sm:text-left px-2 sm:px-4 flex flex-col sm:grid sm:grid-cols-3 lg:grid-cols-6"> <div class="px-4"> <div class="font-heading-serif footer-menu-heading text-xl mb-1 mt-4 sm:min-h-[28px]"> Movie Reviews </div> <div class="footer-menu font-heading-sans text-sm"> <div class="menu-footer-movie-reviews-container"><ul id="menu-footer-movie-reviews" class="menu"><li id="menu-item-215041" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-215041"><a href="/great-movies">Roger&#8217;s Greatest Movies</a></li> <li id="menu-item-215042" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-215042"><a href="/reviews">All Reviews</a></li> <li id="menu-item-215043" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-215043"><a href="/cast-and-crew">Cast and Crew</a></li> </ul></div> </div> <div class="font-heading-serif footer-menu-heading text-xl mb-1 mt-4 sm:min-h-[28px]"> Ebert Prime </div> <div class="footer-menu font-heading-sans text-sm"> <div class="menu-footer-ebert-prime-container"><ul id="menu-footer-ebert-prime" class="menu"><li id="menu-item-215044" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-215044"><a href="https://www.rogerebert.com/prime">Sign Up</a></li> </ul></div> </div> </div> <div class="px-4"> <div class="font-heading-serif footer-menu-heading text-xl mb-1 mt-4 sm:min-h-[28px]"> Movie Genres </div> <div class="footer-menu font-heading-sans text-sm"> <div class="menu-footer-genres-1-container"><ul id="menu-footer-genres-1" class="menu"><li id="menu-item-214957" class="menu-item menu-item-type-taxonomy menu-item-object-genre menu-item-214957"><a href="https://www.rogerebert.com/genre/action">Action</a></li> <li id="menu-item-215063" class="menu-item menu-item-type-taxonomy menu-item-object-genre menu-item-215063"><a href="https://www.rogerebert.com/genre/amazon-prime">Amazon Prime</a></li> <li id="menu-item-215064" class="menu-item menu-item-type-taxonomy menu-item-object-genre menu-item-215064"><a href="https://www.rogerebert.com/genre/comedy">Comedy</a></li> <li id="menu-item-214959" class="menu-item menu-item-type-taxonomy menu-item-object-genre menu-item-214959"><a href="https://www.rogerebert.com/genre/documentary">Documentary</a></li> <li id="menu-item-215065" class="menu-item menu-item-type-taxonomy menu-item-object-genre menu-item-215065"><a href="https://www.rogerebert.com/genre/drama">Drama</a></li> <li id="menu-item-215066" class="menu-item menu-item-type-taxonomy menu-item-object-genre menu-item-215066"><a href="https://www.rogerebert.com/genre/horror">Horror</a></li> <li id="menu-item-215074" class="menu-item menu-item-type-taxonomy menu-item-object-genre menu-item-215074"><a href="https://www.rogerebert.com/genre/hulu">Hulu</a></li> </ul></div> </div> </div> <div class="px-4"> <div class="font-heading-serif footer-menu-heading text-xl mb-1 mt-4 sm:min-h-[28px]"></div> <div class="footer-menu font-heading-sans text-sm"> <div class="menu-footer-genres-2-container"><ul id="menu-footer-genres-2" class="menu"><li id="menu-item-215068" class="menu-item menu-item-type-taxonomy menu-item-object-genre menu-item-215068"><a href="https://www.rogerebert.com/genre/mystery">Mystery</a></li> <li id="menu-item-215069" class="menu-item menu-item-type-taxonomy menu-item-object-genre menu-item-215069"><a href="https://www.rogerebert.com/genre/netflix">Netflix</a></li> <li id="menu-item-215070" class="menu-item menu-item-type-taxonomy menu-item-object-genre menu-item-215070"><a href="https://www.rogerebert.com/genre/romance">Romance</a></li> <li id="menu-item-215071" class="menu-item menu-item-type-taxonomy menu-item-object-genre menu-item-215071"><a href="https://www.rogerebert.com/genre/science-fiction">Science Fiction</a></li> <li id="menu-item-215072" class="menu-item menu-item-type-taxonomy menu-item-object-genre menu-item-215072"><a href="https://www.rogerebert.com/genre/suspense">Suspense</a></li> <li id="menu-item-215073" class="menu-item menu-item-type-taxonomy menu-item-object-genre menu-item-215073"><a href="https://www.rogerebert.com/genre/thriller">Thriller</a></li> </ul></div> </div> </div> <div class="px-4"> <div class="font-heading-serif footer-menu-heading text-xl mb-1 mt-4 sm:min-h-[28px]"> Blogs </div> <div class="footer-menu font-heading-sans text-sm"> <div class="menu-footer-blogs-1-container"><ul id="menu-footer-blogs-1" class="menu"><li id="menu-item-215045" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-215045"><a href="/reviews">Reviews</a></li> <li id="menu-item-215046" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-215046"><a href="https://www.rogerebert.com/category/chazs-blog">Chaz&#8217;s Journal</a></li> <li id="menu-item-215051" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-215051"><a href="/great-movies">Great Movies</a></li> <li id="menu-item-215049" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-215049"><a href="https://www.rogerebert.com/category/mzs">MZS</a></li> <li id="menu-item-215047" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-215047"><a href="https://www.rogerebert.com/category/far-flung-correspondents">Far Flungers</a></li> <li id="menu-item-215048" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-215048"><a href="https://www.rogerebert.com/category/interviews">Interviews</a></li> <li id="menu-item-215050" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-215050"><a href="https://www.rogerebert.com/category/tributes">Tributes</a></li> </ul></div> </div> </div> <div class="px-4"> <div class="font-heading-serif footer-menu-heading text-xl mb-1 mt-4 sm:min-h-[28px]"></div> <div class="footer-menu font-heading-sans text-sm"> <div class="menu-footer-blogs-2-container"><ul id="menu-footer-blogs-2" class="menu"><li id="menu-item-215057" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-215057"><a href="https://www.rogerebert.com/category/video-games">Video Games</a></li> <li id="menu-item-215052" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-215052"><a href="https://www.rogerebert.com/category/black-writers-week">Black Writers Week</a></li> <li id="menu-item-215053" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-215053"><a href="https://www.rogerebert.com/category/features">Features</a></li> <li id="menu-item-215056" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-215056"><a href="https://www.rogerebert.com/category/streaming">TV/Streaming</a></li> <li id="menu-item-215055" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-215055"><a href="https://www.rogerebert.com/category/roger-ebert">Roger Ebert</a></li> <li id="menu-item-215054" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-215054"><a href="https://www.rogerebert.com/category/festivals">Festivals &amp; Awards</a></li> </ul></div> </div> </div> <div class="px-4"> <div class="font-heading-serif footer-menu-heading text-xl mb-1 mt-4 sm:min-h-[28px]">Ebert Co.</div> <div class="footer-menu font-heading-sans text-sm"> <div class="menu-footer-ebert-co-container"><ul id="menu-footer-ebert-co" class="menu"><li id="menu-item-215058" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-215058"><a href="/about">About the site</a></li> <li id="menu-item-215059" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-215059"><a href="/contact-us">Contact us</a></li> <li id="menu-item-215060" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-215060"><a href="mailto:advertising@ebertdigital.com">Advertise with us</a></li> <li id="menu-item-215061" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-215061"><a href="/contributors">Contributors</a></li> </ul></div> </div> <div class="flex gap-4 items-center justify-center sm:justify-start mt-4"> <a href="https://www.facebook.com/RogerEbert" aria-label="Find us on Facebook"> <img loading="lazy" width="18" height="18" src="https://www.rogerebert.com/wp-content/themes/roger-ebert/source/images/facebook.svg" alt="Facebook logo"> </a> <a href="" aria-label="Find us on YouTube"> <img loading="lazy" width="21" height="16" src="https://www.rogerebert.com/wp-content/themes/roger-ebert/source/images/youtube.svg" alt="YouTube logo"> </a> <a href="" aria-label="Find us on Twitter (X)"> <img loading="lazy" width="18" height="18" src="https://www.rogerebert.com/wp-content/themes/roger-ebert/source/images/x-icon.svg" alt="Twitter (X) logo"> </a> </div> </div> </div> <div class="w-full max-w-[1440px] m-auto gap-8 justify-center items-center py-10 pb-0 px-4 flex flex-col md:flex-row"> <div class="in-memoriam flex text-center md:text-right items-center md:items-end lg:items-center lg:justify-center flex-col lg:flex-row"> <span class="font-heading-serif text-2xl lg:mr-4">“Roger Ebert Loved Movies”</span> <a href="/memoriam" class="underline font-heading-sans text-sm">In Memoriam 1942 - 2013</a> </div> <img loading="lazy" width="398" height="136" src="https://www.rogerebert.com/wp-content/themes/roger-ebert/source/images/roger-pic.png" alt="Photo of Roger Ebert In Memoriam"> </div> <div class="w-full flex flex-col sm:flex-row justify-center footer-terms text-center py-8 border-t border-line-grey font-heading-sans text-sm"> <span>Ebert Digital LLC © Copyright 2025</span> <div class="menu-footer-terms-container"><ul id="menu-footer-terms" class="w-full sm:w-auto sm:flex sm:ml-3"><li id="menu-item-214948" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-214948"><a href="https://www.rogerebert.com/terms-of-use">Terms of use</a></li> <li id="menu-item-214952" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-privacy-policy menu-item-214952"><a rel="privacy-policy" href="https://www.rogerebert.com/privacy-policy">Privacy Policy</a></li> </ul></div> </div> </footer> </div> <script type="speculationrules"> {"prerender":[{"source":"document","where":{"and":[{"href_matches":"\/*"},{"not":{"href_matches":["\/wp-login.php","\/wp-admin\/*","\/*\\?*(^|&)_wpnonce=*","\/wp-content\/uploads\/*","\/wp-content\/*","\/wp-content\/plugins\/*","\/wp-content\/themes\/roger-ebert\/*"]}},{"not":{"selector_matches":"a[rel~=\"nofollow\"]"}},{"not":{"selector_matches":".no-prerender"}}]},"eagerness":"moderate"}]} </script> <script type="text/javascript">var algolia = {"debug":false,"application_id":"40M9V88SHV","search_api_key":"6a93834cc03da63576a3caf9b5c19c06","powered_by_enabled":false,"query":"","autocomplete":{"sources":[],"input_selector":"input[name='s']:not(.no-autocomplete):not(#adminbar-search)"},"indices":{"searchable_posts":{"name":"prod_wp_searchable_posts","id":"searchable_posts","enabled":true,"replicas":[]}}};</script><script type="text/javascript" id="disqus_count-js-extra"> /* <![CDATA[ */ var countVars = {"disqusShortname":"rogerebert"}; /* ]]> */ </script> <script type="text/javascript" src="https://www.rogerebert.com/wp-content/plugins/disqus-comment-system/public/js/comment_count.js?ver=3.1.2" id="disqus_count-js"></script> <script type="text/javascript" src="https://www.rogerebert.com/wp-content/themes/roger-ebert/dist/js/main.min.js?ver=1739170101" id="main-js-js"></script> <script type="text/javascript" src="https://widget.justwatch.com/justwatch_widget.js?ver=1.0.0" id="justwatch-widget-js" defer="defer" data-wp-strategy="defer"></script> <script type="text/javascript" id="social_warfare_script-js-extra"> /* <![CDATA[ */ var socialWarfare = {"addons":[],"post_id":"96598","variables":{"emphasizeIcons":false,"powered_by_toggle":false,"affiliate_link":"https:\/\/warfareplugins.com"},"floatBeforeContent":""}; /* ]]> */ </script> <script type="text/javascript" src="https://www.rogerebert.com/wp-content/plugins/social-warfare/assets/js/script.min.js?ver=4.5.4" id="social_warfare_script-js"></script> <script type="text/javascript" id="advanced-ads-pro/front-js-extra"> /* <![CDATA[ */ var advanced_ads_cookies = {"cookie_path":"\/","cookie_domain":""}; var advadsCfpInfo = {"cfpExpHours":"3","cfpClickLimit":"3","cfpBan":"7","cfpPath":"","cfpDomain":"www.rogerebert.com"}; /* ]]> */ </script> <script type="text/javascript" src="https://www.rogerebert.com/wp-content/plugins/advanced-ads-pro/assets/js/advanced-ads-pro.min.js?ver=2.28.0" id="advanced-ads-pro/front-js"></script> <script>window.advads_admin_bar_items = [{"title":"Advertising Wrapper Includes","type":"ad"},{"title":"Ad Wrapper","type":"placement"},{"title":"Top Leaderboard","type":"ad"},{"title":"Top Leaderboard","type":"placement"},{"title":"Review Float Left","type":"ad"},{"title":"Review Inline 1","type":"placement"},{"title":"Review Inline Video","type":"ad"},{"title":"Review Inline Video","type":"placement"},{"title":"Review Float Right","type":"ad"},{"title":"Review Inline 3","type":"placement"},{"title":"Review Inline Reusable","type":"ad"},{"title":"Review Inline 2","type":"placement"},{"title":"Review Inline Reusable","type":"ad"},{"title":"Review Inline 4","type":"placement"}];</script><script type="text/javascript"> var swp_nonce = "7ce61440e7";var swpFloatBeforeContent = false; var swp_ajax_url = "https://www.rogerebert.com/wp-admin/admin-ajax.php"; var swp_post_id = "96598";var swpClickTracking = false;</script><script>!function(){window.advanced_ads_ready_queue=window.advanced_ads_ready_queue||[],advanced_ads_ready_queue.push=window.advanced_ads_ready;for(var d=0,a=advanced_ads_ready_queue.length;d<a;d++)advanced_ads_ready(advanced_ads_ready_queue[d])}();</script> </body> </html> <!-- Performance optimized by Redis Object Cache. Learn more: https://wprediscache.com Retrieved 4959 objects (911 KB) from Redis using PhpRedis (v6.0.2). -->

Pages: 1 2 3 4 5 6 7 8 9 10