My wife died last year. My neighbor keeps hitting on me. | #facebookdating | #tinder | #pof

Photo illustration by Slate. Photo by fizkes/iStock/Getty Images Plus.

Slate is now asking those who read the most to support our journalism more directly by subscribing to Slate Plus. Learn more.

Dear Prudence,

I am a single father to a 6-year-old, “Jane.” I lost my wife last year. The house behind mine belongs to “Kelly,” a single mom in her late 30s. Jane has befriended Kelly’s kids, but Kelly wants to be friends with me to an embarrassing extent. She comes over to ask for “favors” dressed up in tight clothes and high heels. I have stopped fixing things because she will crowd me and make suggestive comments. If she has a sip of wine, she will giggle about our kids being “practically” siblings and joke about moving in with me. Her hugs last way too long. I’ve told Kelly that I am still mourning my wife and not interested in dating—twice. She nods and continues. The ugly truth is I am not interested in Kelly and find her overbearing and crude. She isn’t a bad person, but if I didn’t have Jane, we would never have spoken. She is a good mom, but I don’t want to be friends with her beyond the kids. I have tried letting her down easy but it doesn’t stick. Help.

—Not Friends

Let go of the things you can’t actually control, such as what Kelly wears when she knocks on your door, and focus on the things you can. If she stands too close to you, say, “Can you step back, please? I need more room.” If she goes in for a hug, tell her you don’t want one. If she tries to carry a conversation beyond play date logistics, you can excuse yourself to take a call or move laundry or whatever task comes to mind. You can use COVID as a short-term excuse if you like, but since you might be neighbors for years to come, I’d recommend just saying no. If she starts to say something suggestive, interrupt her and remind her that you’ve asked her to stop making that kind of joke around you.

“I don’t want to flirt with my next-door neighbor” is hardly an “ugly” truth. You’re not being ungallant or unkind. You just don’t want to go out with her, and you want her to listen when you tell her to stop. You’re perfectly entitled to politely reinforce these limits, to restrict the amount of time you spend speaking to her, and to let her down a little harder if she doesn’t take “no” for an answer.

Dear Prudence,

I am the manager of a small office of around 15 employees. The owner is somewhat brusque and aloof, so most interactions with staff fall to me. I consider myself to be a generally kind person who doesn’t mind lending a compassionate ear when someone requires one. We have one employee, “Esmeralda,” who has always been difficult. She’s experienced but incredibly dramatic and frequently clashes with the owner, co-workers, and clients. She has been on a performance improvement plan since just before the pandemic. I’m trying to be more lenient with everyone these days, but our sector has been hard-hit by COVID and we probably can’t keep operating if the pandemic continues well into next year. We’re not there yet, but the owner and I have discussed the grim possibility of future layoffs.

Esmerelda is only getting worse. She was always difficult and overbearing, but now she’s erratic. She does almost no work and comes into my office twice a day to unload all her troubles (with her ex, her parents, her son, her house, her car) onto me. She calls me after she goes home. I cannot discuss a mistake she makes at work without her either shutting down completely or sobbing uncontrollably. I have tried telling her I have to focus on my own job, that I can’t take her calls after work hours, that she needs to manage her emotions at work so we can have work discussions. I have ignored her calls and texts, but she keeps trying, over and over again, until I respond. I can’t block her number because she legitimately needs it for work. I have offered her time off to take care of issues or even just for an emotional break, but she insists she doesn’t want to be at her house because it makes her depressed since it’s “not what she wants.” Nothing seems to get through.

Last week I brought her into my office to tell her that I was concerned about her and wanted her to strongly consider seeing a therapist or her primary care physician. I told her as gently as I could that I have 14 other staff members and 50 clients who all need my help on a daily basis, and I would no longer be able to be her sounding board, but I would do whatever I could to accommodate a schedule that allows her to get help. She wept and said she might as well just kill herself and broke down into hysterics. I had to call her emergency contact, who apparently is a neighbor who barely knows Esmeralda. Her mother apparently stayed with her for the evening to keep an eye on her. She came in the next day like we never had the conversation. I am at a loss. I want her to be healthy and well, and I want her to keep her job! But I also can’t handle this anymore, being held hostage by her emotions and keeping her on payroll just because I’m afraid of what happens if I let her go. I have my own significant personal issues to deal with, as well as those of other staff and clients who all have needs as well. What do I do?

—Performance Isn’t Improving

This woman has been on a performance improvement plan since February. It’s December now. These plans are usually part of a last-ditch effort to see if a struggling employee can turn things around. What were the terms of Esmerelda’s improvement plan? Based on your letter, I’m concerned there may have been no well-defined goals, clear deadlines, or formal metrics for evaluating whether she’d made the changes. And although I can appreciate your desire to accommodate your employees during a pandemic, extending this process indefinitely has affected your ability to get your own work done and perhaps alienated your other employees and clients. Frankly, the pattern you’ve described—calling you obsessively, demanding you give her your attention at all hours, sobbing uncontrollably when you point out an error, threatening suicide when you try to limit her ability to endlessly pour her grievances into your ear—sounds an awful lot like harassment.

If you don’t have documentation about Esmerelda’s performance, start keeping a record, going back over the last year. Talk to the owner about whether laying her off now might be a better alternative, since she’d likely be eligible for unemployment. In addition, if you haven’t already discussed her threat of suicide with him, do so now. I don’t care how “aloof” he normally is—this could become a liability issue, and he needs to know about it. You may both need to speak to a lawyer before proceeding, especially concerning your own safety after Esmerelda is let go, as she may escalate her harassment.

In the meantime, you should not offer Esmerelda any more advice about finding a therapist or talking to her doctor. I also don’t think you two should be having any more one-on-one meetings. From now on, if she tries to call you after hours, get you alone in the office, or otherwise drag you into her chaos, you need to say, “I can’t discuss personal issues with you.” Nothing more, and nothing less. Then you need to leave or hang up or otherwise end the conversation. A canned answer without further explanation or argument is the only response you can offer her attempts at forced intimacy from now on. If you doubt your ability to do so alone, tell the company owner you need his support. Do whatever it takes to make sure you can back up your “No” next time. Good luck.

How to Get Advice From Prudie

• Send questions for publication to (Questions may be edited.)
• Join the live chat every Monday at noon. Submit your questions and comments here before or during the live discussion.
• Call the voicemail of the Dear Prudence podcast at 401-371-DEAR (3327) to hear your question answered on a future episode of the show.

Dear Prudence,

I hate Christmas. I hate the lights, the food, the decor, the consumerism, the music, the giant get-togethers, the gifts, the kids, the chaos, the crowds, the constant running around, and the clutter. The gatherings get bigger and louder every year. Last year, there were over 40 people at each dinner. I’m in my 30s and I find all of the noise and crowds associated with Christmas to be overwhelming. I’m also a vegetarian and have been for almost 15 years—the only vegetarian food at our Christmas get-togethers is the food I bring. Christmas has always been a particularly difficult time for me. I don’t know why. All the cheer makes me feel so lonely and exhausted.

I’m also very particular about the things I buy. I don’t buy much, but when I do, it’s something I really want and need. My family knows this, but every year they buy me so much. I don’t want to sound whiny, and I act grateful, but then I end up giving most of it to Goodwill. I’ve asked them not to buy me things, and I’ve stopped participating in white elephant exchanges, but they don’t get the hint. This year I suggested we do a no-gifts-Christmas because of COVID, and no one even responded to the idea.

I don’t want to rock the boat any more this year, but I am thinking about skipping Christmas starting next year. I want to tell them that I will buy no gifts, receive no gifts, and won’t attend Christmas parties. Instead, I’d like to do small, quiet, meaningful gatherings at a nice restaurant or even at home, preferably in November or January. Growing up, my family had extremely limited means. My parents also placed my sister and I in a lot of unsafe situations (abuse, drugs, abandonment), and I feel like they buy so much now to try to make up for it. But it doesn’t make me feel good to receive these gifts. I feel guilty. Neither of my parents have saved a dime for retirement, and they both work very demanding jobs. I don’t want them to spend their hard-earned money on gifts that I don’t want. (I also make more money than both of them.) Can I skip Christmas? Does it make me a selfish, terrible person?

—Guilty Grinch

There’s a lot going on here, obviously, about a number of complicated family dynamics, some of which stretch back decades, but I’ll confine myself to answering only the question you asked: Yes, you can skip Christmas. You just don’t like Christmas. It’s fine! It’s not the only day out of the year where relatives can demonstrate affection for one another, or receive love, or experience joy, or get dinner together. You’ve put in at least 30 Christmases already. Take the next 30 off. Skip it, without guilt!

Help! I Keep Looking for Excuses Not to Hang Out With My Husband.

Danny M. Lavery is joined by Avery Trufelman on this week’s episode of the Dear Prudence podcast.

Subscribe to the Dear Prudence Podcast on Apple Podcasts, Spotify, Stitcher, or wherever you get your podcasts.

Dear Prudence,

I’m a married mother, and for nearly two years I’ve had an obsessive crush on a lay leader in my church. We communicate frequently and respectfully about practical matters and often “like” each other’s social media posts. The only place it’s not totally innocent is in my head—but it’s not innocent there at all, and I can’t seem to shake this fantasy. The pandemic has made it worse, because I feel isolated from all my friends and activities, and when I get some attention from him, it feels like a major boost. But I don’t think it’s good for me, my marriage, or my volunteering at the church (which is otherwise very important to me). How do I, an otherwise rational adult, make myself get past a schoolgirl crush?

—Getting Over Adult Crush

I may not be the right advice columnist for you! But you did write to me, and I hope you’re able to get counsel elsewhere if you find my answer distasteful. You say this crush is “obsessive” and “not good” for you, but nothing you’ve described here strikes me as especially worrisome. You enjoy getting attention from someone you like in the middle of a terrifying, deeply isolating pandemic. You’re not having an affair or trying to see how close you can get to one with plausible deniability. You’re not ignoring your spouse in order to text all night, driving past your crush’s house at 2 a.m. just to see if he’s home, or offering inappropriate disclosures about your marriage’s shortcomings in order to pique your crush’s interest. Sometimes the thoughts in your head are not “innocent,” which is perfectly fine. I’ve never met a wholly innocent person, but the mere idea fills me with horror and revulsion.

If the reason you’re so upset with yourself right now has anything to do with your particular religion’s understanding of sexual morality, I’m afraid I cannot help you chastise yourself for lusting in your heart. Lusting in your heart can be great, especially when you have a healthy sense of the difference between fantasy and reality, as you seem to. If you’re truly distressed and you find some relief muting his accounts on social media, go ahead and do so. It won’t hurt to spend a little less time scrolling through his feed. But I can’t encourage you to flinch from the reality of desire, especially when you’ve already got your priorities pretty firmly in place and know how to behave yourself.

Dear Prudence Uncensored

“It’s very clear that she’s using that pain as justification to hurt other people, and that has to count for something.”
Danny Lavery and Future Tense associate editor Jaime Green discuss a letter in this week’s Dear Prudence Uncensored—only for Slate Plus members.

Dear Prudence,

I have been in a relationship with this girl/woman (53 years old) for a few years. We live in different countries. I am much older—27 years older. She is a single mother of a 15-year-old, and I do get along well with her child. We have talked about living together, which would mean her immigrating here. Don’t be hasty in being fixated on the age difference: I look 60 to 65 years old, and I feel 60. Some difficult issues have surfaced, such as she has insisted on sharing my email account. Initially I did, but she used it to torture herself, going back maybe 10 years to read emails in my mailbox, which I shared with friends. No girlfriends—we just talked trashy.

I told her that I will support her 90 percent, which means I am prepared to be there for her until she finds a job and help with that last 10 percent. She has refused. Am I being unreasonable and selfish? I believe that my first financial commitment should be for my old age. I do have some investments and receive a pension and own my home, which provides me with a reasonably comfortable life.

—Lingering Long-Distance

I’m not worried about the age difference here. I don’t think a 53-year-old mother is a vulnerable or inexperienced young adult, and I think you can drop the “girl” from “girl/woman” without worrying you’re eliding some serious imbalance of power. You have a girlfriend who wants to read every email you’ve written in the last decade and refuses to move in with you unless you commit to paying 100 percent of her expenses, and it sounds like you’re willing to let her read most of your emails and are OK with paying 90 percent of her expenses. On the one hand, she seems to have you pretty tidily where she wants you, so what’s another 10 percent? A 90/10 split was never going to be an equitable division between the two of you. On the other hand, it’s perfectly reasonable to say, “Sorry, I can’t pay for everything, even if we live together” to your partner, and if you don’t want to budge on this issue, I certainly wouldn’t call you unreasonable or selfish. You might not be able to get everything you want—but that’s not unreasonable, either. It happens all the time.

Now available in your podcast player: the audiobook edition of Danny M. Lavery’s latest book, Something That May Shock and Discredit YouGet it from Slate

Dear Prudence,

What’s the polite way to decline to be a professional reference for a person whom I have supervised on a short project lasting a few months? The individual failed to complete the project and engaged in rude and abusive behavior toward me. We have an ongoing business relationship, and I would like to avoid additional conflict.

—Recommendation Frustration

It is a little surprising that this colleague would ask someone who knows they didn’t finish their work as a reference, because it suggests that you might somehow be the best available option! “I’m sorry, I’m not available to serve as a reference” is clear enough and doesn’t get into the tricky business of alluding to your lousy experience working together. “I don’t think I’m the right person to act as a reference for you, but I’m flattered you thought of me” is similarly vague, although if you worry this colleague is the type to press for further explanation, the first option might remain the best available. You can even call it a “policy,” as in, “Sorry, I have a policy never to write recommendations.”

It may be impossible to avoid conflict entirely here, unless you’re willing to lie and say you had a great time working together, which I can’t recommend. But as long as you don’t get drawn into an argument about the reasons why and stick to “I’m sorry, that just won’t be possible; you’ll have to ask someone else,” odds are good they’ll move on. Be consistent and boring when you say no, and you’ll carry the day.

Classic Prudie

While my wife and I were swingers in our early 20s (and enjoyed it very much!), we moved to a more conservative area 10 years ago and found ourselves completely disconnected from others in that subculture (we are now 40). About a year ago, a couple in their late 20s moved in next door. Our homes are very close together, and their bedroom is next to our driveway, where I spend a great deal of my time tinkering around. Imagine my delight when I first heard them loudly going at it. Occasionally, my wife and I can also hear them while we’re in our kitchen. We feel a little guilty about this voyeurism, but it has caused our sex life to explode again. We also think we’re picking up interference from their baby monitors, as we’ve heard them having sex and some of their discussions (including their apparent interest in swinging). The couple is very polite to us, and my wife and I have thought about getting to know them better in hopes it could lead to something more. Is this something we should pursue? If not, is it still OK to listen in?

')}function tryGetCriteoFastBid(){try{var fastBidStorageKey="criteo_fast_bid",hashPrefix="// Hash: ",fastBidFromStorage=storage.getDataFromLocalStorage(fastBidStorageKey),firstLineEndPosition,firstLine,publisherTagHash,publisherTag;null!==fastBidFromStorage&&(firstLineEndPosition=fastBidFromStorage.indexOf("n"),firstLine=fastBidFromStorage.substr(0,firstLineEndPosition).trim(),firstLine.substr(0,hashPrefix.length)!==hashPrefix?(__WEBPACK_IMPORTED_MODULE_4__src_utils_js__.logWarn("No hash found in FastBid"),storage.removeDataFromLocalStorage(fastBidStorageKey)):(publisherTagHash=firstLine.substr(hashPrefix.length),publisherTag=fastBidFromStorage.substr(firstLineEndPosition+1),Object(__WEBPACK_IMPORTED_MODULE_6_criteo_direct_rsa_validate_build_verify_js__.verify)(publisherTag,publisherTagHash,FAST_BID_PUBKEY_N,FAST_BID_PUBKEY_E)?(__WEBPACK_IMPORTED_MODULE_4__src_utils_js__.logInfo("Using Criteo FastBid"),eval(publisherTag)):(__WEBPACK_IMPORTED_MODULE_4__src_utils_js__.logWarn("Invalid Criteo FastBid found"),storage.removeDataFromLocalStorage(fastBidStorageKey))))}catch(e){}}Object(__WEBPACK_IMPORTED_MODULE_1__src_adapters_bidderFactory_js__.registerBidder)(spec)},377:function(e,t,r){Object.defineProperty(t,"__esModule",{value:!0});var n=r(378),i=r(379);t.verify=function(e,t,r,o){var a=new n.BigInteger(n.b64toHex(t)),s=new n.BigInteger(n.b64toHex(r)),c=a.modPowInt(o,s);return n.removeExtraSymbols(c.toHexString())===i.Sha256.hash(e)}},378:function(e,t,r){var n;Object.defineProperty(t,"__esModule",{value:!0});var i=(o.prototype.toHexString=function(){if(this.s<0)return"-"+this.negate().toHexString();var e,t=!1,r="",n=this.t,i=this.DB-n*this.DB%4;if(0>i)&&(t=!0,r=l(e));0<=n;)i<4?(e=(this[n]&(1<>(i+=this.DB-4)):(e=this[n]>>(i-=4)&15,i<=0&&(i+=this.DB,--n)),0this.DB?(this[this.t-1]|=(i&(1<>this.DB-n):this[this.t-1]|=i<=this.DB&&(n-=this.DB))}this.clamp(),r&&o.ZERO.subTo(this,this)}},o.prototype.negate=function(){var e=a();return o.ZERO.subTo(this,e),e},o.prototype.abs=function(){return this.s<0?this.negate():this},o.prototype.mod=function(e){var t=a();return this.abs().divRemTo(e,null,t),this.s<0&&0>n|a,a=(this[s]&i)<=t.DV&&(e[r+t.t]-=t.DV,e[r+t.t+1]=1)}0>this.F2:0),m=this.FV/g,b=(1<=this.t)t.t=0;else{var n=e%this.DB,i=this.DB-n,o=(1<>n;for(var a=r+1;a>n;0>=this.DB;if(e.t>=this.DB;n+=this.s}else{for(n+=this.s;r>=this.DB;n-=e.s}t.s=n<0?-1:0,n<-1?t[r++]=this.DV+n:0>15;0<=--o;){var c=32767&this[e],d=this[e++]>>15,u=s*c+d*a;i=((c=a*c+((32767&u)<<15)+r[n]+(1073741823&i))>>>30)+(u>>>15)+s*d+(i>>>30),r[n++]=1073741823&c}return i},o.prototype.am3=function(e,t,r,n,i,o){for(var a=16383&t,s=t>>14;0<=--o;){var c=16383&this[e],d=this[e++]>>14,u=s*c+d*a;i=((c=a*c+((16383&u)<<14)+r[n]+i)>>28)+(u>>14)+s*d,r[n++]=268435455&c}return i},o);function o(e){null!==e&&this.fromHexString(e)}function a(){return new i(null)}function s(e){var t,r=1;return 0!=(t=e>>>16)&&(e=t,r+=16),0!=(t=e>>8)&&(e=t,r+=8),0!=(t=e>>4)&&(e=t,r+=4),0!=(t=e>>2)&&(e=t,r+=2),0!=(t=e>>1)&&(e=t,r+=1),r}t.BigInteger=i,t.nbi=a,t.nbits=s;for(var c=[],d="0".charCodeAt(0),u=0;u<=9;++u)c[d++]=u;for(d="a".charCodeAt(0),u=10;u<36;++u)c[d++]=u;for(d="A".charCodeAt(0),u=10;u<36;++u)c[d++]=u;function p(e,t){var r=c[e.charCodeAt(t)];return null==r?-1:r}t.intAt=p;var f="0123456789abcdefghijklmnopqrstuvwxyz";function l(e){return f.charAt(e)}t.int2char=l,t.b64toHex=function(e){for(var t="",r=0,n=0,i=0;i>2),n=3&o,1):1==r?(t+=l(n<<2|o>>4),n=15&o,2):2==r?(t+=l(n),t+=l(o>>2),n=3&o,3):(t+=l(n<<2|o>>4),t+=l(15&o),0))}return 1==r&&(t+=l(n<<2)),t},t.removeExtraSymbols=function(e){return e.replace(/^1f+00/,"").replace("3031300d060960864801650304020105000420","")};var g=(m.prototype.convert=function(e){return e.s<0""0<=e.compareTo(this.m)?e.mod(this.m):e},m.prototype.revert=function(e){return e},m.prototype.reduce=function(e){e.divRemTo(this.m,null,e)},m.prototype.mulTo=function(e,t,r){e.multiplyTo(t,r),this.reduce(r)},m.prototype.sqrTo=function(e,t){e.squareTo(t),this.reduce(t)},m);function m(e){this.m=e}var b=(v.prototype.convert=function(e){var t=a();return e.abs().dlShiftTo(this.m.t,t),t.divRemTo(this.m,null,t),e.s<0&&0>15)*this.mpl&<<15)&e.DM;for(e[r=t+this.m.t],n,e,t,0,this.m.t);e[r]>=e.DV;)e[r]-=e.DV,e[++r]++}e.clamp(),e.drShiftTo(this.m.t,e),0<=e.compareTo(this.m)&&e.subTo(this.m,e)},v.prototype.mulTo=function(e,t,r){e.multiplyTo(t,r),this.reduce(r)},v.prototype.sqrTo=function(e,t){e.squareTo(t),this.reduce(t)},v);function v(e){this.m=e,,this.mpl=32767&,>>15,<>>0;for(a[o-1][14]=Math.floor(d),a[o-1][15]=u,s=0;s>>0;var l=r[0],g=r[1],m=r[2],b=r[3],v=r[4],y=r[5],h=r[6],_=r[7];for(f=0;f<64;f++){var S=_+i.z1(v)+i.Ch(v,y,h)+t[f]+p[f],I=i.z0(l)+i.Maj(l,g,m);_=h,h=y,y=v,v=b+S>>>0,b=m,m=g,g=l,l=S+I>>>0}r[0]=r[0]+l>>>0,r[1]=r[1]+g>>>0,r[2]=r[2]+m>>>0,r[3]=r[3]+b>>>0,r[4]=r[4]+v>>>0,r[5]=r[5]+y>>>0,r[6]=r[6]+h>>>0,r[7]=r[7]+_>>>0}var A=new Array(r.length);for(_=0;_>>e|t<<32-e},i.z0=function(e){return i.ROTR(2,e)^i.ROTR(13,e)^i.ROTR(22,e)},i.z1=function(e){return i.ROTR(6,e)^i.ROTR(11,e)^i.ROTR(25,e)},i.q0=function(e){return i.ROTR(7,e)^i.ROTR(18,e)^e>>>3},i.q1=function(e){return i.ROTR(17,e)^i.ROTR(19,e)^e>>>10},i.Ch=function(e,t,r){return e&t^~e&r},i.Maj=function(e,t,r){return e&t^e&r^t&r},i);function i(){}t.Sha256=n}},[375]),pbjsChunk([218],{501:function(e,t,r){e.exports=r(502)},502:function(e,t,r){Object.defineProperty(t,"__esModule",{value:!0}),r.d(t,"spec",function(){return A});var n=r(0),i=r(2),o=r(3),a=r(10),s=r.n(a),c=r(503),d=r.n(c),u=r(1);function p(e){return function(e){if(Array.isArray(e))return f(e)}(e)""function(e){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e))return Array.from(e)}(e)""function(e,t){if(e){if("string"==typeof e)return f(e,t);var,-1);return"Object"===r&&e.constructor&&(,"Map"===r"""Set"===r?Array.from(e):"Arguments"===r""/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?f(e,t):void 0}}(e)""function(){throw new TypeError("Invalid attempt to spread non-iterable instance.nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function f(e,t){(null==t""t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);re.length)&&(t=e.length);for(var r=0,n=new Array(t);rnnnx3c!-- Rubicon Project Ad Tag --x3en


nn")),c=d(m[i.size_id].split("x").map(function(e){return Number(e)}),2),s.width=c[0],s.height=c[1]),s.rubiconTargeting=(Array.isArray(i.targeting)?i.targeting:[]).reduce(function(e,t){return e[t.key]=t.values[0],e},{rpfl_elemid:f.adUnitCode}),t.push(s)):n.logError("Rubicon: bidRequest undefined at index position:".concat(o),r,e),t},[]).sort(function(e,t){return(t.cpm""0)-(e.cpm""0)})},getUserSyncs:function(e,t,r,n){if(!x&&e.iframeEnabled){var i="";return r&&"string"==typeof r.consentString&&("boolean"==typeof r.gdprApplies?i+="?gdpr=".concat(Number(r.gdprApplies),"&gdpr_consent=").concat(r.consentString):i+="?gdpr_consent=".concat(r.consentString)),n&&(i+="".concat(i?"&":"?","us_privacy=").concat(encodeURIComponent(n))),x=!0,{type:"iframe",url:"https://".concat(g.syncHost"""eus","")+i}}},transformBidParams:function(e){return n.convertTypes({accountId:"number",siteId:"number",zoneId:"number"},e)}};function v(e,t){var r=o.b.getConfig("pageUrl");r=e.params.referrer?e.params.referrer:r""t.refererInfo.referer;return^http:/i,"https:"):r}function y(e,t){var r=e.params;if("video"===t){var i=[];return[,]:Array.isArray(n.deepAccess(e,""))&&[0]:Array.isArray(e.sizes)&&0e.length)&&(t=e.length);for(var r=0,n=new Array(t);r‘;var i,o}},h=function(e){var t=0=e&&t.innerWidth‘+v.vast_url+”“:v.vast_string&&(y=v.vast_string),g.pre_market_bids.push({id:v.deal_id,seatbid:[{bid:[{,dealid:v.deal_id,price:v.price,adm:y}]}],cur:v.currency,ext:{event_log:[{}]}})}}var h=n.getBidIdParameter(“mimes”,e.params)””[“application/javascript”,”video/mp4″,”video/webm”],_={id:e.bidId,secure:l,video:{w:p,h:f,ext:g,mimes:h}};””!=n.getBidIdParameter(“price_floor”,e.params)&&(_.bidfloor=n.getBidIdParameter(“price_floor”,e.params)),””!=n.getBidIdParameter(“start_delay”,e.params)&&(“start_delay”,e.params))),””!=n.getBidIdParameter(“min_duration”,e.params)&&(“min_duration”,e.params)),””!=n.getBidIdParameter(“max_duration”,e.params)&&(“max_duration”,e.params)),””!=n.getBidIdParameter(“placement_type”,e.params)&&(“placement_type”,e.params)),””!=n.getBidIdParameter(“position”,e.params)&&(“position”,e.params)),e.crumbs&&e.crumbs.pubcid&&(c=e.crumbs.pubcid);var S=navigator.language?”language”:”userLanguage”,I={id:s,imp:_,site:{id:””,page:a,content:”content”},device:{h:screen.height,w:screen.width,dnt:n.getDNT()?1:0,language:navigator[S].split(“-“)[0],make:navigator.vendor?navigator.vendor:””,ua:navigator.userAgent},ext:{wrap_response:1}};n.getBidIdParameter(“number_of_ads”,e.params)&&(I.ext.number_of_ads=n.getBidIdParameter(“number_of_ads”,e.params));var A={};return 1==n.getBidIdParameter(“spotx_all_google_consent”,e.params)&&(A.consented_providers_settings=u),t&&t.gdprConsent&&(A.consent=t.gdprConsent.consentString,void 0!==t.gdprConsent.gdprApplies&&n.deepSetValue(I,”regs.ext.gdpr”,t.gdprConsent.gdprApplies?1:0)),t&&t.uspConsent&&n.deepSetValue(I,”regs.ext.us_privacy”,t.uspConsent),n.deepAccess(e,”userId.id5id.uid”)&&(A.eids=A.eids””[],A.eids.push({source:””,uids:[{id:e.userId.id5id.uid}],ext:e.userId.id5id.ext””{}})),c&&(A.fpc=c),e&&e.schain&&(I.source={ext:{schain:e.schain}}),e&&e.userId&&e.userId.tdid&&(A.eids=A.eids””[],A.eids.push({source:””,uids:[{id:e.userId.tdid,ext:{rtiPartner:”TDID”}}]})),n.isEmpty(A)””(I.user={ext:A}),{method:”POST”,url:””+s,data:I,bidRequest:t}})},interpretResponse:function(e,t){var r=[],i=e.body;return i&&n.isArray(i.seatbid)&&n._each(i.seatbid,function(e){n._each(,function(e){var a={};for(var c in t.bidRequest.bids)e.impid==t.bidRequest.bids[c].bidId&&(a=t.bidRequest.bids[c]);n._each(a.params.pre_market_bids,function(t){,i.cur=t.currency)});var d={requestId:a.bidId,currency:i.cur”””USD”,cpm:e.price,creativeId:e.crid””””,dealId:e.dealid””””,ttl:360,netRevenue:!0,,cache_key:e.ext.cache_key,vastUrl:””+e.ext.cache_key,videoCacheKey:e.ext.cache_key,mediaType:s.d,width:e.w,height:e.h};d.meta=d.meta””{},e&&e.adomain&&0e.length)&&(t=e.length);for(var r=0,n=new Array(t);rt?e:t}function d(e,t,n){!e.preload&&e.preloadThreshhold&&function(e,t,n,i){return<=i+n&&u(e)}(,t.rect,e.preloadThreshhold,n)&&(e.preload=!0,setTimeout(function(){e.trigger("preload",new r("preload",t))},15))}function c(n){var i=n.el.getBoundingClientRect(),o=t.innerHeight""e.documentElement.clientHeight,h=f(i,o),s=h/(i.height""o),l={target:n.el,rect:i,visiblePx:h,visiblePercent:s};!function(e,t){var n=t.visiblePx,i=t.visiblePercent;n&&i>=e.shownThreshold&&!e.seen?(e.seen=!0,setTimeout(function(){e.trigger(“shown”,new r(“shown”,t))},15)):(!n””i1&&(h+=e(r,Math.floor(n/o),i-1,o)),h},this.getVerticallyVisiblePixels=f,this.getViewportHeight=function(){return t.innerHeight””e.documentElement.clientHeight””e.body.clientHeight},this.getViewportWidth=function(){return t.innerWidth””e.documentElement.clientWidth””e.body.clientWidth},this.isElementNotHidden=u,this.isElementInViewport=function(n){var i=n.getBoundingClientRect();return>=0&&i.left>=0&&i.bottom<=(t.innerHeight""e.documentElement.clientHeight)&&i.right<=(t.innerWidth""e.documentElement.clientWidth)},this.Visible=o}]); }, {}]; 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= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError(“Invalid attempt to iterate non-iterable instance.nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.”); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = o[Symbol.iterator](); }, n: function n() { var step =; normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }

function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === “string”) return _arrayLikeToArray(o, minLen); var n =, -1); if (n === “Object” && o.constructor) n =; if (n === “Map””” n === “Set”) return Array.from(o); if (n === “Arguments””” /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }

function _arrayLikeToArray(arr, len) { if (len == null “” len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; } function mountLegacyServices() { Object.keys(window.modules).filter(function (key) { return typeof key === 'string' && key.match(/.legacy$/); }).forEach(function (key) { return window.require(key); }); } function tryToMount(fn, el, name) { try { fn(el); // init the controller } catch (e) { var elementTag = el.outerHTML.slice(0, el.outerHTML.indexOf(el.innerHTML)); console.error("Error initializing controller for "".concat(name, "" on "").concat(elementTag, """), e); } } /** * mount client.js component controllers */ function mountComponentModules() { Object.keys(window.modules).filter(function (key) { return typeof key === 'string' && key.match(/.client$/); }).forEach(function (key) { var controllerFn = window.require(key); if (typeof controllerFn === 'function') { var name = key.replace('.client",""), instancesSelector = "[data-uri*="_components/".concat(name, "/"]"), defaultSelector = "[data-uri$="_components".concat(name, ""]"), instances = document.querySelectorAll(instancesSelector), defaults = document.querySelectorAll(defaultSelector); var _iterator = _createForOfIteratorHelper(instances), _step; try { for (_iterator.s(); !(_step = _iterator.n()).done;) { var el = _step.value; tryToMount(controllerFn, el, name); } } catch (err) { _iterator.e(err); } finally { _iterator.f(); } var _iterator2 = _createForOfIteratorHelper(defaults), _step2; try { for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) { var _el = _step2.value; tryToMount(controllerFn, _el, name); } } catch (err) { _iterator2.e(err); } finally { _iterator2.f(); } } }); } // 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(); // ]]

Source link

.  .  .  .  .  .  . .  .  .  .  .  .  .  .  .  .   .   .   .    .    .   .   .   .   .   .  .   .   .   .  .  .   .  .