The way a man dresses says a lot about him — much more than he might realize. Everything from the width of his lapel to the break in his trouser signals how he wants to be perceived and who he really is. Which is why, when it comes to the sartorial choices of TV’s richest male characters, there is much to be gleaned. (An embarrassment of riches, if you will.) There are the obvious sartorial standouts like the men of Succession, and dark horses like Raymond Reddington of The Blacklist, not to mention the characters whose style warrant attention for how clearly it communicates who they are, like Roland Blum of The Good Fight. Each of them tells a story through the clothing he wears, whether he knows it or not.
All of these men show us that the key to dressing is as much about making sure a jacket collar lies flat on the back of a shirt collar (ahem, Ballers) as it does knowing what you can pull off. Below, let’s break down 13 of the best, most ostentatious, and noteworthy wardrobes of TV’s fabulously rich guys, from how their clothes fit, to their ability to match patterns and fabrics, plus what you definitely shouldn’t try at home.
Logan Roy, Succession
Photo: HBO
Logan Roy wears some of my favorite clothes on television. His suits are bespoke — Succession costume designer Michelle Matland toldThe New Yorker that they are custom-made by the same British tailor who outfits Martin Scorsese and films like The Wolf of Wall Street — and the pedigree shows. Roy’s jackets fit on the larger side (I would guess he wears about a 46), but they reflect who he is. He is not a modern man like Roman or Kendall. A neatly tailored, slim-cut suit would look out of place on a man of his age, stature, and character. Instead Logan’s impeccable heavy wool windowpane sports coats and neutral blue (or blue and gray) suits match the man wearing them. He’s classic, slightly indicative of eras past, but with serious staying power. When Logan isn’t in a jacket or suit, his casual wear is similarly understated, but still superlatively luxurious. His signature wool baseball cap — which he sometimes wears in a solid, other times in a subtle plaid — is something every man should have in his wardrobe. It looks polished, but casual and it ties his leisure look together with maturity.
Lenny Belardo, The Young Pope
Photo: Netflix
Let’s be clear: Priest outfits are objectively sexy, so when you upgrade that to a pope outfit and put Jude Law in it, you have the Holy Grail of sex appeal. I know I’ll catch some flak for this, what with all the Hot Priest lust from Fleabag fans, but Lenny tops my sexy-clergy scoreboard because of what The Young Pope captures about fashion in the Catholic Church: It is an amalgamation of the opulent and the macabre. Lenny looks like a relic, a foreboding almost eerie presence as he glides through the Vatican in a white cassock. At the same time, his accessories (many of which were made by Giorgio Armani) and his immaculate white tracksuit serve as reminders that he is not your grandmother’s pope. His flat brimmed sun hats, which he dons both in white and blood red, and his red slippers — which look understated, but are in fact Louboutin, yet another nod to the opulence of papal fashion — punctuate some of the most sublime sacred looks onscreen. The way the wide white belt cinches Law’s white frock at waist could get even a lapsed Catholic like me in the confessional, and the scene in which he dresses for his papal address, set to LMFAO’s “Sexy and I Know It” is a union of costuming and cinematography of biblical proportions.
Spencer Strasmore, Ballers
Photo: HBO
When I first dug into the fashion of Ballers, I gotta say I hated all of it: the contrast collar shirts, the peak lapels, the pastel button-downs, the vests. But what I was missing was Dwayne Johnson’s magnetic bravado. When you see this costuming in motion onscreen, it just works. Maybe I just have a crush on the Rock, but then again, who doesn’t? That being said, I gotta talk about the fit of his jackets. I want to be clear: Perfectly fitting a man with the Rock’s physique takes superhuman precision — I am not even going to hazard a guess at his jacket size — and overall, his suits fit fine. But what is that gap between the back of his shirt collar and his jacket? I know it’s possible for his suits to fit correctly because in some scenes his jacket collar does lie flat on his shirt collar. Every time I see him onscreen with that space creeping up the back of his neck it drives me up the wall. A character with so much money and apparent affinity for style should not have this problem.
Connor Roy, Succession
Photo: HBO
Connor Roy dresses like every semi-hot dad at the New England prep school I attended. His look reeks of family money and “career”choices that both diverge from and affirm how detached from reality he is. Connor likes to think he has a creative side, as shown in how he wears more sweaters and less worsted wool and silk ties than his siblings. Even when he wears suits (I would guess a 40 long), his choices are slightly left of center, like a (very beautiful!) olive velvet number. But Connor’s insistence on a life off the grid and away from the fray of Waystar Royco is only possible, of course, because he is so rich. His reliance on family money allows him to live a frivolous life detached from reality. This is the side of Connor that wears vests — so many vests, some worse than others, but really, all of them bad. He’s not a “graphite Zegna suit at the office” guy, but his vest collection is here to remind us that he is still a rich white guy.
Adrian Boseman, The Good Fight
Photo: CBS
Being well-dressed is as much about being properly tailored and on trend as it is about knowing your look and what you can pull off. Few TV characters make a better case for this than Adrian Boseman, whose signature looks include three-piece suits and pinstripes. These choices can look ostentatious or cheap if done poorly (see: Roger Stone, or how Succession uses a wide pinstripe to differentiate Tom Wambsgans and the comfortably old-money look of the Roys). This wardrobe is a real “don’t try this at home” situation. You need a lot — and I mean a lot — to go right to pull it off without looking catastrophically tasteless. Adrian (who probably wears around a 44 or 46 long) pulls off these classic styles thanks in part to the impeccable tailoring on his suits. Too often when men lean into trends like pinstripes or wide ties, they opt for a boxier cut, or just wear a size too large altogether. Adrian’s suits are cut close, skimming his frame, but ultimately, it’s his presence that makes sense of his wardrobe. Actor Delroy Lindo’s gravitas allows these bold choices to play second chair to his character, rather than overwhelm it. And while I don’t always approve of Adrian’s spread collars and wide silk ties, they are effective illustrations of who he is: so commanding of your attention that you barely notice he is wearing a contrasting double-breasted vest.
Kendall Roy, Succession
Photo: HBO
In the first episode of Succession, my eyes zoomed right into the knot on Kendall’s tie. Kendall has a slight build (probably a 38) and a narrow, oval face. The breadth of his tie knot — which is probably a Balthus or a Windsor — makes him look like a bloated cartoon character who got out of bed and put on what he thought made him look slick and intimidating. And that is, of course, exactly who Kendall Roy is in that moment. That tie knot is the sartorial equivalent of the way he trips over his words in a negotiation or his business missteps. It reveals what a novice he is. It’s an overcompensation. Unlike the ease of his dad’s soft sweaters and worn bespoke suits, Kendall is still dressing like he has something to prove. But that same tie is how I knew, before he opened his mouth, that Kendall was going to screw over Logan at the press conference in Succession’s second season finale. He is wearing the same suit, but this time the knot was different: smaller, more modern, possibly a four-in-hand. By abandoning that absurd and exaggerated tie knot for a more understated and secure one, he was stepping out from under his douchebag-prodigal-son aesthetic. He is no longer yearning to be daddy’s golden boy and he no longer has to rely on an ostentatious tie knot to prove himself.
Andre Allen, Ballers
Photo: HBO
Andre Allen is proof that Ballers takes place in an alternate universe where peak lapels can be pulled off with regularity. Similar to Spencer’s wardrobe of choices that would be questionable were they not adoring the Rock, this has a lot to do with Andy Garcia’s magnetism and how well they suit his character. Let’s talk about fit: Allen is partial to lightweight suits and sports coats made of linens and all-season wools, often in light colors. Occasionally they look disheveled, but usually he looks pretty damn sharp. And I’d be remiss if I didn’t mention the navy sweater jacket he wears that would have made even Logan Roy jealous. He doesn’t go in for flashy patterns the way Spencer does, but what he lacks in windowpane jackets, he makes up for in paisley pocket squares and ascots paired with lux double-breasted jackets. His jackets generally fit better than Spencer’s — this is obviously because Andy Garcia’s physique (he probably wears around a 40 or 42) is easier to fit than the Rock’s — but they still, very occasionally, gap between the shirt collar and the jacket collar. When they do, it is the only thing I can see on the screen.
Chuck Rhoades and Bobby Axelrod, Billions
Photo: Jeff Neumann/Showtime
It’s important to group Chuck and Bobby together because their costuming so intentionally and obviously illustrates the gulf between their respective wealth. Chuck is usually adorned in a mishmash of three-piece suits (which, for the record, fit well! He is probably a 42) with pinstripes, spread collars, and silk ties. He dresses the way Daddy Warbucks would if he went to work as an attorney general. If an inanimate object could be described as bloviating, I would call Chuck’s suits bloviating. He also blends with his surroundings: Weighty suits match the mahogany walls of his office; his suspenders blend with his leather swivel chair and the rows of inlaid bookshelves that frame his head.
Then there’s Axe. Every effort Chuck makes to look wealthy and powerful, Axe shirks. He is a man with inconceivable wealth and his clothing reflects that; his blue-on-blue ensembles don’t say, “Look at me!” and in doing so they say, “I’m someone to look at.” His cashmere hoodies are worn to show us that he has nothing to prove. He does not have to wear anything obviously flashy or obviously indicative of wealth because he is wealth. Like Chuck, he blends with his surroundings: The simplicity of his monochromatic looks matches the sterility of his hedge-fund office; when he walks by a bay of blue screens, his sweaters and henleys complement their azure glow. It’s worth pointing out that on the rare occasion that we do see Axe in a suit (I would wager he wears a 38), he forgoes the tie and sometimes a collared shirt altogether. But markers of his wealth are still there; a somehow subtle peak lapel, or a tailoring job so good it looks like he was poured into the suit.
Johnny Rose, Schitt’s Creek
Schitt’s Creek has perhaps the most sublime costuming on television. A lot has rightly been said about the costuming for Moira Rose (Catherine O’Hare), Alexis (Anne Frances), and David (Daniel Levy) because their outfits are a feast for the eyes of enviable designer clothes and accessories. The patriarch of the family, Johnny (Eugene Levy), has the most understated wardrobe of all the Roses, but a closer look at his superlative suits reveals them to be well-matched to the high-fashion prestige of his wife and kids. Johnny almost always wears an impeccably tailored, modern cut suit (I’d guess he wears a 40) with a double vent, medium-size lapel, and a slim pant that has a quarter break. When putting together a suit, men have a couple of choices of where to add flair. Add too much and you look overdone, but not enough and you look like you were created on an assembly line. What makes Johnny one of the best-dressed men on television is how he nails this delicate balance. Johnny’s suits often feature a subtle pattern like a windowpane, a plaid, or a faint, narrow pinstripe. He pairs them with a crisp white or blue shirt and almost always forgoes a tie, instead opting for a silk pocket square in complementary pattern. By investing his style points in the pattern on his suit and allowing the rest of his outfit to play the supporting role he looks effortlessly put together, comfortable, and high-class.
Raymond Reddington, The Blacklist
Photo: Virginia Sherwood/NBC
I should disclose that I have a bad crush on James Spader — not Pretty in Pink Spader, but Raymond Reddington Spader (and yes, even Robert California Spader). Reddington is an impeccably dressed man whose style I would describe as opulent chaos contained. He lives for a good three-piece suit (probably a 40 or 42) or even a waistcoat, and everything he wears is tailored to absolute perfection. Reddington’s accessories of choice include wool fedoras, which he somehow manages to make look effortlessly chill and dignified, and a pair of Oliver Peoples rectangular aviators with cognac lenses and gold frames. He has an impressive collection of overcoats that fit close over his suits and vests and modernize his otherwise old-school and slightly over-the-top looks. His style is one that the average guy would struggle to pull off; it’s not the kind of thing you wear to your office job. But for a fugitive with bottomless financial resources, it suits Reddington just right.
Roland Blum, The Good Fight
Photo: HBO
If Raymond Reddington is opulent chaos contained, Michael Sheen’s freewheeling renegade attorney is opulent chaos on acid. He makes a lot of the same style choices as Reddington — three-piece suits, waistcoats, a bevy of luxurious accessories — but all of his outfits look as if they’ve just been picked up off the floor after a night he does not remember and assembled in the dark. To finish his looks off, he mixes in gaudy patterns, fur collared coats, and pocket watches (pocket watches!), all clearly narrative tools to illustrate how little Blum cares about appearing remotely normative in his style or his ethics. And to be clear, I consider the choice to wear a pocket watch an ethical one.
Prince Philip, The Crown
Photo: Des Willie/Netflix
Prince Philip’s style on The Crown can be described as very old-money on a somewhat young man. Most of his style choices are traditional, with the occasional outlier. His clothing is pristine — everything from his formal wear to his Barbour coats exudes easy luxury. His suits fit on the larger, boxy side, especially by modern standards, but they exude a regal power. The shoulders are broad and his suits are usually cut from a heavy wool with a beautiful and subtle pattern; he occasionally wears a three-button jacket that is incredibly hard to pull off, but he manages it thanks to his stature and surroundings. He loves — and I mean loves — a good vest, whether it’s part of a three-piece suit or a sweater under a sports coat. (Between Billions and The Crown and Connor Roy on Succession, there is an entire thesis on the use of vests to signal wealth.) But there are still occasional indicators of his youth like his thin wool ties, a divergence from what one would traditionally place in accord with a conservative wardrobe.
By submitting your email, you agree to our
Terms and Privacy Notice
and to receive email correspondence from us. This site is protected by reCAPTCHA and the Google
Privacy Policy and
Terms of Service apply.
or
Already a subscriber?
What is your email?
This email will be used to sign into all New York sites. By submitting your email, you agree to our Terms and Privacy Policy and to receive email correspondence from us.
Password must be at least 8 characters and contain:
Lower case letters (a-z)
Upper case letters (A-Z)
Numbers (0-9)
Special Characters (!@#$%^&*)
This password will be used to sign into all New York sites. By submitting your email, you agree to our Terms and Privacy Policy and to receive email correspondence from us.
You’re in!
As part of your account, you’ll receive occasional updates and offers from New York, which you can opt out of anytime.
or
Already a subscriber?
What is your email?
This email will be used to sign into all New York sites. By submitting your email, you agree to our Terms and Privacy Policy and to receive email correspondence from us.
Password must be at least 8 characters and contain:
Lower case letters (a-z)
Upper case letters (A-Z)
Numbers (0-9)
Special Characters (!@#$%^&*)
This password will be used to sign into all New York sites. By submitting your email, you agree to our Terms and Privacy Policy and to receive email correspondence from us.
You’re in!
As part of your account, you’ll receive occasional updates and offers from New York, which you can opt out of anytime.
Already a subscriber?
Already a subscriber?
`;
// integrate Sub(x) scripts and elements
if (hostname !== 'subs.nymag.com') { // do not integrate on this subdomain
document.head.appendChild(trackingScript);
document.body.insertAdjacentHTML('beforeend', subXAnimationElements);
}
There was an error processing the request. Please try again later."}).catch(e=>console.error("Error verifying email: ",e)))(r.querySelector(".content"),o.bannerCTAVerification)})):(l.remove(),s.remove()),o.dismissable||n.remove(),o.useAlertIcon||a.remove(),r.classList.add("show"),n.addEventListener("click",()=>{u(),r.classList.remove("show")})}else r.remove()}});
}, {"1":1,"6":6,"12":12,"35":35,"40":40}];
window.modules["global-nav.client"] = [function(require,module,exports){"use strict";const dom=require(4),auth=require(12),signInButton=dom.find(".user-signin"),signOutButton=dom.find(".user-signout"),globalNav=dom.find('[class^="global-nav"]'),body=dom.find("body"),dropdownItems=dom.findAll(".dropdown-wrap"),gtm=require(1),appendLandingPageParams=require(135),pageUri=require(124).getPageUri(),subscriptionPromoLinks=dom.findAll(".persist-params"),searchString=window.location.search||"";function closeDropdowns(e){let n=globalNav.querySelectorAll(".dropdown.open");dropdownItems.forEach(function(t){let o=t.querySelector(".dropdown");!n||t.contains(e.target)&&27!==e.keyCode||o.classList.remove("open")})}function gtmSendReport(e,n,t){let o={eventCategory:"ecommerce",eventAction:"componentClick",brand:e,dimension23:"global-nav",list:pageUri,pageZone:"header",variant:"nav-link"};"global-nav-link"===t&&(o.eventLabel=n.href),gtm.reportNow(o)}function updateElementTargetUrlsIfQueryStrings(e){if(searchString){const n=new URLSearchParams(searchString);let t=e.href;if(t.includes("?")){const o=t.split("?"),i=new URLSearchParams(o[1]);for(let e of n.entries())i.set(e[0],e[1]);t=`${o[0]}?${i.toString()}`,e.href=t}else e.href=`${t}?${n.toString()}`}}function init(e){const n=e.querySelectorAll(".to-landing-page");window.addEventListener("auth:init",()=>{signInButton.addEventListener("click",function(e){e.preventDefault(),auth.showEmbeddedLoginFlow("top navigation")}),signOutButton.addEventListener("click",function(e){e.preventDefault(),gtmSendReport("Sign Out",e.target,"user-info-link"),auth.logout()}),auth.isAuthenticated()&&e.classList.add("signed-in"),auth.isSubscriber()&&e.classList.add("subscribed"),e.querySelectorAll(".user-link").forEach(e=>{e.classList.add("active")}),subscriptionPromoLinks.forEach(e=>{updateElementTargetUrlsIfQueryStrings(e)}),appendLandingPageParams(n)})}dropdownItems.forEach(function(e){e.addEventListener("click",function(){e.querySelector(".dropdown").classList.toggle("open")})}),body.addEventListener("click",closeDropdowns),document.addEventListener("keydown",closeDropdowns),globalNav.addEventListener("click",function(e){let n=e.target;n.classList.contains("global-nav-track")&>mSendReport(n.text,n,"global-nav-link")}),module.exports=init;
}, {"1":1,"4":4,"12":12,"124":124,"135":135}];
window.modules["aaa-module-mounting.legacy"] = [function(require,module,exports){"use strict";const _pickBy=require(221),_each=require(406),Fingerprint2=require(408),DS=require(407),Eventify=require(246);function registerGlobals(){window.DS=DS,window.Eventify=Eventify,window.Fingerprint2=Fingerprint2,DS.value("Eventify",Eventify),DS.value("Fingerprint2",Fingerprint2),DS.value("$document",window.document),DS.value("$window",window)}function mountDollarSliceComponents(){DS.service("components",["$document","$module",function(e,n){var o=_pickBy(n.definitions,e=>e.providerStrategy===n.providers.controller),r=Object.keys(o);function t(e){return o=>{try{n.get(e,o)}catch(e){logMountError(o,e)}}}_each(r,n=>{var o=e.querySelectorAll('[data-uri*="/_components/'+n+'/"]'),r=e.querySelectorAll('[data-uri$="/_components/'+n+'"]');_each(o,t(n)),_each(r,t(n))}),this.components=r}]),DS.get("components")}function logMountError(e,n){const o=e.outerHTML.slice(0,e.outerHTML.indexOf(e.innerHTML));console.error("Error attaching controller to "+o,n)}registerGlobals(),"loading"===document.readyState?document.addEventListener("DOMContentLoaded",()=>{mountDollarSliceComponents()}):mountDollarSliceComponents();
}, {"221":221,"246":246,"406":406,"407":407,"408":408}];
window.modules["ads.legacy"] = [function(require,module,exports){"use strict";const _map=require(118),_forEach=require(107),_isString=require(268),_intersectionWith=require(409),_isEqual=require(274),_each=require(406),_debounce=require(182),_sortBy=require(205),page=require(124),visit=require(114);DS.service("adService",["Eventify","$cid","$document","$window",function(e,t,a,i){var o,n,s,r,d,c,u,l,g={},p=this,h=[],f=visit.getQueryParamsObject(["utm_campaign"]),m=document.querySelector('script[data-type="ad-a9"]'),b=[],w=!1,v=[],y=document.querySelector('script[data-name="ad-doubleverify"]');document.querySelector('script[data-name="concert-ads"]')||(i.NYM={},i.NYM.analytics={},i.NYM.analytics.adStartTime=i.performance.now(),i.googletag=i.googletag||{},i.googletag.cmd=i.googletag.cmd||[],u=i.googletag,(m||y)&&(i.googletag.cmd=i.googletag.cmd||[],i.googletag.cmd.push(function(){i.googletag.pubads().disableInitialLoad()})),m&&(l=i.setInterval(function(){void 0!==window.apstag&&void 0!==window.apstag.timeout&&(i.clearInterval(l),window.apstag.cleared=!0,l=null)},10),setTimeout(function(){l&&(i.clearInterval(l),i.googletag.pubads().refresh(),window.apstag||console.log("MESSAGE: Timeout for A9 load exceeded, aborting"))},500)),y&&(b.push(new Promise(function(e){w?e():v.push(e)})),c=i.setTimeout(T,2500)),o=function(e){var t,a,o=e.data,n=[];return o.loaded?e:(o.loaded=!0,t=null,(t=o.sizes?u.defineSlot(o.name,o.sizes,o.id).addService(u.pubads()):u.defineOutOfPageSlot(o.name,o.id).addService(u.pubads())).setTargeting("adid",o.id),f.hasOwnProperty("utm_campaign")&&t.setTargeting("utmcamp",f.utm_campaign),a=p.getAdCount(o.label),t.setTargeting("label",o.label+"_"+o.site+"-"+a),u.display(o.id),u.pubads().addEventListener("slotOnload",function(){i.NYM.analytics.firstAdLoadTime||(i.NYM.analytics.firstAdLoadTime=i.performance.now(),i.NYM.analytics.firstAdLoadLabel=e.data.label)}),n=_(o),Promise.all(b).then(function(){n?window.apstag&&window.apstag.cleared?window.apstag.fetchBids({slots:[n],timeout:window.apstag.timeout},function(){u.cmd.push(function(){window.apstag.setDisplayBids(),u.pubads().refresh([t],{changeCorrelator:!1})})}):y&&u.pubads().refresh([t],{changeCorrelator:!1}):u.pubads().refresh([t],{changeCorrelator:!1})}),e.slot=t,e)},n=function(e){var a,i,o,n=t(),s=e.getAttribute("data-name"),r=e.getAttribute("data-sizes"),d=e.getAttribute("data-label"),c=e.getAttribute("data-site");n=e.id,r&&r.length?(r=r.split(","),a=[],_map(r,function(e){e=e.split("x"),i=parseInt(e[0]),o=parseInt(e[1]),a.push([i,o])})):(e.classList.add("oop"),a=!1),this.data={id:n,name:s,sizes:a,loaded:!1,label:d,site:c},g[n]=this},r=function(e){u.cmd.push(function(){var t=o(e);g[e.data.id]=t})},s=function(e){var t=[];e.slot?(t=_(e))&&window.apstag&&window.apstag.cleared&&window.apstag.fetchBids({slots:[t],timeout:window.apstag.timeout},function(){u.cmd.push(function(){window.apstag.setDisplayBids(),u.pubads().refresh([e.slot],{changeCorrelator:!1})})}):e&&r(e)},u.cmd.push(function(){var e,t,o,n=page.getMeta("article:tag"),s=page.getMeta("author"),r=i.location.href,d=(e=a.head.querySelector(".head-gtm"),t=a.body.querySelector(".gtm"),e&&"top"===e.getAttribute("data-gtm")?"gtmtop":t&&"bottom"===t.getAttribute("data-gtm")?"gtmbottom":"");o=[],_forEach([n,s,d],function(e){_forEach(e.split(","),function(e){(e=e.trim().toLowerCase().replace(/\s/g,"-").replace(/\'|\’/g,"")).length&&o.push(e)})}),u.pubads().setTargeting("kw",o),u.pubads().setTargeting("entry_group",o),r=r.slice(r.lastIndexOf("/")+1),u.pubads().setTargeting("pn",r),u.companionAds().setRefreshUnfilledSlots(!0),u.pubads().enableAsyncRendering(),u.enableServices()}),this.load=r,this.create=function(e){return new n(e)},this.refresh=function(e){var t;_isString(e)?(t=this.getById(e),s(t)):s(e)},this.remove=function(e){var t=e.data.id;a.getElementById(t).innerHTML=""},this.getAdCount=function(e){var t,a=0,i=Object.keys(g);return _each(i,function(i){(t=g[i]).data.loaded&&t.data.label===e&&a++}),a},this.getById=function(e){return g[e]},d=_debounce(function(){var e={TopLeaderboard:1,RightColTopMPU:2,outOfPage:99,"homepageTakeover/TopLeaderboard":1},t=_sortBy(h,function(t){return e[t.data.label]||10});_forEach(t,function(e){return e.data.sizes?r(e):i.setTimeout(function(){r(e)},2e3)}),y&&window.PQ.cmd.push(()=>{try{window.PQ.loadSignals(["ids","bsc","vlp"],T)}catch(e){T(),console.error(`There has been an error loading Double Verify signals: ${e}`)}}),h=[]},10),this.addToPageLoadQueue=function(e){h.push(e),d()});function _(e){var t,a=e.sizes;return a=_intersectionWith(a,[[970,250],[970,90],[728,90],[300,600],[300,250],[320,100],[320,50]],_isEqual),e.sizes&&e.sizes.length&&(t={slotID:e.id,sizes:a,slotName:e.label}),t}function T(){i.clearTimeout(c),w=!0,_forEach(v,function(e){e()})}}]);
}, {"107":107,"114":114,"118":118,"124":124,"182":182,"205":205,"268":268,"274":274,"406":406,"409":409}];
window.modules["cid.legacy"] = [function(require,module,exports){"use strict";DS.service("$cid",function(){var r=Math.floor(100*Math.random());return function(){return"cid-"+ ++r}});
}, {}];
window.modules["client.legacy"] = [function(require,module,exports){"use strict";require("cid.legacy"),require("ads.legacy"),require("facebook.legacy"),require("aaa-module-mounting.legacy");
}, {"cid.legacy":"cid.legacy","ads.legacy":"ads.legacy","facebook.legacy":"facebook.legacy","aaa-module-mounting.legacy":"aaa-module-mounting.legacy"}];
window.modules["facebook.legacy"] = [function(require,module,exports){"use strict";DS.service("facebook",[function(){this.fb=function(i){window.FB&&window.FB[i].apply(this,Array.prototype.slice.call(arguments,1))}}]);
}, {}];
require=(function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o typeof key === 'string' && key.match(/\.legacy$/)).forEach(key => window.require(key));
}
function tryToMount(fn, el, name) {
try {
fn(el); // init the controller
} catch (e) {
const elementTag = el.outerHTML.slice(0, el.outerHTML.indexOf(el.innerHTML));
console.error(`Error initializing controller for "${name}" on "${elementTag}"`, e);
}
}
/**
* mount client.js component controllers
*/
function mountComponentModules() {
Object.keys(window.modules).filter(key => typeof key === 'string' && key.match(/\.client$/)).forEach(key => {
let controllerFn = window.require(key);
if (typeof controllerFn === 'function') {
const name = key.replace('.client', ''),
instancesSelector = `[data-uri*="_components/${name}/"]`,
defaultSelector = `[data-uri$="_components${name}"]`,
instances = document.querySelectorAll(instancesSelector),
defaults = document.querySelectorAll(defaultSelector);
for (let el of instances) {
tryToMount(controllerFn, el, name);
}
for (let el of defaults) {
tryToMount(controllerFn, el, name);
}
}
});
}
// Make sure that a `window.process.env.NODE_ENV` is available in the client for any dependencies,
// services, or components that could require it
// note: the `` value is swapped for the actual environment variable in /lib/cmd/compile/scripts.js
window.process = window.process || {};
window.process.env = window.process.env || {};
if (!window.process.env.NODE_ENV) {
window.process.env.NODE_ENV = '';
}
// note: legacy controllers that require legacy services (e.g. dollar-slice) must
// wait for DOMContentLoaded to initialize themselves, as the files themselves must be mounted first
mountLegacyServices();
mountComponentModules();
// ]]