During his years as an instructor, and later a studio director, at the West Village location of Barre3, Dino Malvone cultivated a group of dedicated students, including actress Carla Gugino and makeup artist Ashleigh Ciucci, all of whom were eager to follow him when he launched a new workout concept, SaltDrop, in late 2019. After a few months of teaching his beat-driven cardio and body-weight sculpting classes at the Gibney Agnes Varis Performing Arts Center in Tribeca, Malvone moved his operation online when the pandemic struck (a digital membership costs $65 monthly or $650 annually). Malvone leads students through a progressively more challenging workout that starts with toning individual muscle groups and finishes with “a big cardio burst,” says Elinor Smith, an editorial and content consultant. “While other trainers want you to burn out by the end of class, Dino prioritizes your feeling present and grateful for the fact that you’re able to move your body,” says Ciucci.
There’s no shortage of beloved Pilates instructors in the city: Coming Soon co-founder Helena Barquet gets private sessions with Gail Giovanniello of Mind Your Body (from $80), while Brother Vellies’ founder Aurora James swears by Fort Pilates founder Ashley Richmond ($90). But what distinguishes the experience offered by model turned health-and-wellness coach Melissa Wood-Tepperberg is that it comes (relatively) cheap: Based in the West Village, she streams her workouts online through her website for just $10 monthly or $100 annually. (The classes require no equipment, are typically under 45 minutes, and blend Pilates-based toning with yogic mindfulness.) Fans include spiritual guru and author Gabrielle Bernstein, who says Wood-Tepperberg is “so sweet and fun you fall in love with her immediately” as well as being “super-easy to follow.” Bernstein adds that the workouts have “helped me get long, lean lines and, best of all, a butt.”
During his ten years in prison, Hector Guadalupe trained fellow inmates and eventually became certified as a personal trainer through a correspondence course. Upon his release, he built his own personal-training business based in the Flatiron District and gained a client in Erin Allweiss, co-founder of the No. 29 communications firm. Allweiss got her whole team involved, and they now do three weekly sessions with Guadalupe (for the moment, they’re being conducted over Zoom), mostly focused on body-weight exercises. Guadalupe’s other fans include Gossamer co-founder Verena von Pfetten, who told us she’s “absolutely obsessed” with him. (His virtual sessions, which you can book through Unibody Fitness, are sold in packages of four for $180; once in-person training starts again, those will cost $120 per hour.)
For Affordable Sparring Sessions
Luis Novas, The Row Astoria, 2643 18th St., Astoria; therowastoria.com; 646-823-2376
Illustration: Jorge Colombo
“I’m kind of a whiny little brat when it comes to strength training,” says stand-up comedian Gina Brillon. When she started sparring with Luis Novas, who owns the Row Astoria studio but specializes in boxing drills, Brillon warned him, “I’m probably gonna curse you out.” Novas took the challenge in stride; Brillon says he’s “funny enough that I would forget about how much I hated the stuff we were doing.” (He charges $900 for 12 hour-long training sessions.) Novas took the time to explain how his strength-and-conditioning routines would make her faster and more effective in the ring, and, she says, “He came up with fun exercises that I really enjoy.”
Before he founded his own gym, S10 Training in the West Village, Stephen Cheuk worked at Gotham Gym and, before that, Equinox Printing House — and actor and designer Waris Ahluwalia has followed him every step of the way. “I tend to be a loyal person,” says Ahluwalia, who was drawn in by Cheuk’s “genuine interest — on a human level — in what you want to achieve or build or do with your body.” Along with Cheuk’s constantly evolving and progressively challenging workout routines, Ahluwalia connected with the trainer’s holistic approach to fitness which includes equal focus on nutrition, recovery, and the mind (his rates start at $150 for a one-hour session). “There’s a dialogue that goes beyond that hour of training,” says Ahluwalia, who explains that, pre-COVID, Cheuk would help him mentally and physically prepare for a grueling schedule of projects that often involved flying between multiple time zones several times a month. The gym also offers an infrared sauna and flotation therapy to help aid in recovery.
For the Whole Family
William Marshall, Benswic, 2473 Frederick Douglass Blvd., first fl.; benswic.com
Instead of encouraging unrealistic goals or “beach body in 30 days” types of quick fixes, Benswic owner William Marshall zeroes in on clients’ individual strengths and weaknesses in four key areas of fitness: strength, cardio, balance, and core. “William’s goal is for you to have a working body into old age, for you to be an athlete your entire life,” says human-rights activist Idalin Bobé, who says she feels stronger and more flexible after a year of working out with Marshall. In addition to private ($80) and small-group ($65) training sessions for adults, Benswic offers youth programs, including track and soccer summer camps and after-school athletic-training classes. And his business is truly family-run, with Marshall’s wife, Shavon, teaching dance classes and the couple’s oldest daughter, Bryana, working as a trainer and management assistant.
Jyll Hubbard-Salk taught yoga for over a decade before opening her own Crown Heights studio, Urban Asanas. Her intention was to make the practice accessible to people of all races, sexualities, and body types — filling a gap she noticed in the often exclusionary yoga scene. And she has succeeded, according to her client of two years stylist Rachael Wang, who says Hubbard-Salk has “created a uniquely inclusive and body-positive space that feels welcome to all.” Each 75-minute class ($12 each or $150 for an unlimited monthly membership) at Urban Asanas starts with meditation, active stretching, and warming up the hands, wrists, and feet before transitioning into a hatha- or vinyasa-flow series. The studio also holds two weekly community classes that are donation based. Wang says, “I am the strongest and most flexible I have ever been, and the meditation and breathwork she teaches has given me tools to manage my stress.” While classes have moved online during the pandemic, “Jyll is amazingly attentive,” according to Wang, “and somehow the transition to virtual training has not limited her teaching in any way.”
Neelu Shruti, whom author (and client) Jia Tolentino describes as “a deeply chill and progressive woman,” left her job as an architect to open the West Village studio Love Child Yoga in 2015. Along with pre- and postnatal yoga, Love Child offers childbirth classes (Shruti is a trained doula), lactation consulting, and “Baby & Me” yoga classes for new parents. While Tolentino says she initially “balked at the price” of a full membership ($180 monthly for unlimited yoga and expectant-parent-support classes), she says it was a “lifeline” during her pregnancy. Compared with other prenatal yoga classes, which Tolentino found too gentle, Shruti’s “hit a sweet spot — therapeutic but challenging, a slow but rewarding burn.” Even over Zoom, Tolentino says Shruti is “really good at tailoring each session to the bodies and needs of whoever shows up.”
A former rockette, Beth Nicely has gained a celebrity following for her workouts, training celebrities like Nicole Kidman (they met on the set of The Prom, where Nicely was a choreographer), Jennifer Garner, and Sutton Foster. She also helped Gagosian gallery director Sarah Hoover deal with postpartum depression and lose 70 pounds after giving birth. “She is a shining light, a cheerleader, a joyful presence, and a freaking Energizer Bunny,” says Hoover, who started working with Nicely in 2017. During the pandemic, Nicely pivoted to virtual training and launched the Limit, where she leads dance-cardio, toning, and trampoline classes ($20 per live class, $25 monthly for unlimited streaming, $200 for one-on-one training). According to Hoover, no other class or trainer has ever challenged her as much. “I was not about to be one of those people who does two Barry’s classes in a row just to get the right workout in,” she says. “I have one hour max, and it needs to count.”
Megan Roup first taught her dance-cardio–sculpting hybrid workout, the Sculpt Society, at Project by Equinox, the gym’s Noho incubator for trainers developing new class concepts. The Sculpt Society was the first Project class to scale to additional Equinox locations, and Roup, a former Brooklyn Nets dancer and trainer of Victoria’s Secret models, brought in big-name clients like Shay Mitchell, Elsa Hosk, and Instagram influencer Arielle Charnas. Now the Sculpt Society is available to the masses through Roup’s app and website (she launched them presciently in late 2019). Roup’s workouts have a more inclusive feel than a Tracy Anderson class: Not only do they cost less ($20 monthly or $119 annually compared to $90 per month for Anderson’s online classes) but, while Anderson has long demonstrated an aversion to “bulk” on women, Roup “never mentions size,” according to Megababe founder Katie Sturino, who has worked out with Roup both in person and online. Sturino says the classes are “hard as hell” and leave her feeling energized.
Between breathless treadmill sprints and high-rep weight lifting, Barry’s Bootcamp workouts are notoriously tough, but instructor Niv Zinder’s classes are known among devotees to take that toughness to another level. It’s the “zero-bullshit attitude” that drove Coming Soon co-founder Fabiana Faria to keep an eye out for Zinder (a former fitness trainer in the Israeli army) on the Barry’s schedule and, once studios shut because of COVID, to sign up for his virtual training. For $250 for four weeks, Zinder offers four live weekly workouts as well as a nutrition session. Faria likes how there are no “cheesy puns or super-hype vibes at 6 a.m.” during these high-intensity workouts which incorporate weights, resistance bands, and sliders. Since starting the program, Faria says “my posture is better, my sleep has improved radically, and I just feel stronger in general — which actually helps with all the heavy lifting we do at the store.”
When Nikki Kimbrough was a cast member of Dreamgirls at the Apollo Theater, she would lead her fellow performers through workout sessions. It was there that she started training actor and Broadway Collective founder Robert Hartwell, who has been a client ever since. Her boot-camp-inspired interval workouts (which are offered virtually or outdoors and start at $750 for a ten-pack) are intense — in a good way. During a typical session, Hartwell is “sweating, screaming, panting, and looking for water.”
Designer Ronny Kobo first heard about Heather Culton from two model friends who trained with Culton before swimsuit photo shoots — a rather convincing endorsement. That was 12 years ago, and Kobo has been training with her ever since. Culton integrates Pilates, yoga, and ballet movements for a full-body workout that’s more about proper alignment and posture than frenetic heart-pumping cardio. “She’s a dancer, so this is a dancer’s workout,” says Kobo. “Her workouts are relaxing.” Culton typically sees clients at Boaz Studios, a personal-training gym on the Upper East Side, but now also does sessions over Zoom (prices start at $200 per session).
As one half of the blogging duo behind Sweats & the City, it’s Elizabeth Endres’s job to try out and review all of the city’s exercise offerings, from boxing and barre to spinning and sculpting. The trainer who stands out to her most is Meghan McFerran, founder of CitySweat. A professional dancer (she performed in the film version of In the Heights), McFerran, who Endres says “exudes next-level positivity,” incorporates cardio, resistance training, and dance-inspired mat exercises in her livestreaming and on-demand workout classes ($12 each or $35 monthly). “I truly look forward to Meghan’s classes,” says Endres. “When you’re working out from home, this energy is absolutely critical.”
“I’ve never felt more body positive, powerful from within, and confident in my ability to heal postdelivery,” says chef Camilla Marcus.This is all thanks to her trainer, Maddie Gentile, whom Marcus started training with shortly before her first child was born. It’s perhaps hard to describe everything Marcus’s highly customized workouts entail: She is a licensed massage therapist, a former director of development at dance-cardio studio chain DanceBody, and a postpartum pelvic-floor-recovery expert. Marcus has stuck with her through a second pregnancy as well as a cross-country move (they now train together over Zoom for $200 per session). And Gentile has been able to work out with both Marcus and her partner simultaneously, “which is incredible,” she says, “given I’ve been pregnant most of the time, and he’s extremely athletic.”
Model and trainer Chelsey Wilkens has the kind of gymnast’s body — on full display on her Instagram account — that makes you want to hire her. At least that was the case for interior designer and cookbook author Athena Calderone, who spotted Wilkens on social media over a year ago and has been training with her ever since. In their private sessions ($150 at Soho Strength Lab or virtually), Calderone says Wilkens leads her through “a series of incredibly challenging and repeated calisthenics-like exercises to build endurance, core strength, and flexibility” that she describes as “hard AF while being both humbling and fun.” And yes, ever since they started working out together, Calderone reports, she feels stronger and leaner.
Alexis Dreiss has worked all over the city, leading ultra-intense athletic-training classes at Tone House and rowing at Rowgatta; she’s an alum of the Training Lab and Soho Strength Lab, too, which is where Harry Nuriev, founder of Crosby Studios, met Dreiss. What Nuriev calls her “1,000-Calorie Burn” class inspired him to follow Dreiss to her current location, her family’s Williamsburg gym, Absolute Power Fitness. Nuriev has been doing strength-and-conditioning work with her for two years ($15 per session, or $175 for a monthly membership), where he feels an exceptional level of personal attention: “Alexis really knows what works and doesn’t work with my body.”
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();
// ]]